PLUGIN: Razorblade 3D - full-blown, modern 3D within AGS!!

Started by DoorKnobHandle, Sun 08/08/2010 16:55:17

Previous topic - Next topic

Joseph DiPerla

Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

Sledgy

dkh, it's wonderful thing! :D


Of course, it needs update - remove clip via walls, put sounds, create shooting, fix jumping (via Spacebar you can fly-y-y-y)) and can't go down any more).

In new updates please add quest elements (probably standart AGS system "Eye-Pickup-Talk-Inventory") and interactiion with some objects. It'd be superb! :)

***

btw, here instruction for running plugin (probably it'd useful for somebody ;)) is:

1. Download the Razorblade plug-in project
2. Download AGS 3.2.x, if you haven't it yet
3. Install AGS exactly in this folder 'C:AGS 3.1.2 SP1'
4. Unpack plug-in to 'C:AGS 3.1.2 SP1' (then files Documentation.txt and dll must be in this folder, and the plug-in project in the 'Razorblade Testgame' folder)

Do not rename the AGS folder, or the plug-in folder, or any files in the plug-in folder.


5. Run AGSEditor, choose Game.agf from the 'Razorblade Testgame' folder.

It must be opened without errors.


6. F5 - Run

DoorKnobHandle

Thanks for the feedback, everybody, and the steps there, Sledgy. I'm working on the folder issue. The problem is the following: models reference the textures they need. In the 3d program the artist can apply a texture to a model (or a part of it). The engine will read that link, load the texture and apply it in-game. So far, so good. However, 3ds Max can apparently only store absolute paths to textures and not relative ones. So it stores the texture as for example "C:\whatever folder\textures\1.jpg" and not relative to the folder where the model is in ie. just "textures\1.jpg".

If you don't follow Sledgy's steps there and just extract the files anywhere, open the project up in AGS and run it, the game will still work flawlessly except with a placeholder texture in place of the real ones though.

abstauber

Wow  :o You've finally finished it!
Congratulations!!!

I hope I'll find some time to play around with it soon. Does it already have some AI like pathfinding integrated?

Anyway, it's great to see this coming to life!

Anian

1. AWESOME!
2. did you say 5000 triangles on the whole level? Have you tried stressing it further, cause that number sounds like a character or two in some engines? This is pure curiosity btw.
3. AWESOME!
4. what about animations and moveable meshes and characters, or is it better to use sprites (2d ones, which I'm asuming is ok cause that's what AGS uses)?
5. THIS IS AWESOME!
I don't want the world, I just want your half

DoorKnobHandle

Thanks guys!! :D

Quote from: abstauber on Tue 17/08/2010 17:02:17
Does it already have some AI like pathfinding integrated?

The point of the plugin is to just be a graphics engine. It's not supposed to do these kind of things. :D HOWEVER, it comes equipped with all functions for people to write their own pathfinding etc. (ie. you can cast rays in all kinds of directions from, say, a model and check that for collisions, get the distance to that collision and so on). The reason why there is no pathfinding is in order to keep it general (you'd need different pathfinding for a 3d strategy game than for a 3d adventure and even different pathfinding for a 3d shooter in 1st or 3rd person perspective). It's possible that people publish their, for example, camera code or, again, pathfinding code in a module, too.

Quote from: anian
did you say 5000 triangles on the whole level? Have you tried stressing it further, cause that number sounds like a character or two in some engines? This is pure curiosity btw.

I have tried complex models and it works just like any normal direct3d game works on your system, it's up to your graphics card mostly. I have a pretty good set-up here and I've had ~500.000 triangles at 100fps still. :p It also depends on texture more than pure triangle count I've found.

Quote from: anian
what about animations and moveable meshes and characters, or is it better to use sprites (2d ones, which I'm asuming is ok cause that's what AGS uses)?

You can do whatever you want. The most common way would be to use normal 3d models. Unfortunately, version 1.0 doesn't yet support bone-animation nor standard vertex animation. But I will work on that as soon as I can find the time. It's not exactly an easy topic. :p


Sorry for the lack of proper English, tired. :D

Anian

Quote from: dkh on Thu 19/08/2010 23:16:26You can do whatever you want. The most common way would be to use normal 3d models. Unfortunately, version 1.0 doesn't yet support bone-animation nor standard vertex animation. But I will work on that as soon as I can find the time. It's not exactly an easy topic. :p
Lol, well, programming is to me borderline magic, so I'm not rushing you or anything, just curiosity.  ;)
I don't want the world, I just want your half

PaperJack

This is very cool, however I have a few function requests:

function RB_createBox(int id, float x, float y, float z, float x1, float y1, float z1, float x2, float y2, float z2)
Creates a simple parallelepiped at the position x y z, with the size x1 y1 z1 to x2 y2 z2 with ID id.
(also a similar function for creating simple hitmodels)
(if possible make similar functions for other simple geometric shapes)

function RB_changeColor(int id, float r, float g, float b)
Changes the colour of id's texture toare g b. a changes the alpha (trasparency).
Inputting id 255 255 255 255 changes the back to how it was originally coloured.

function RB_createLine(int id, float x1, float y1, float z1, float x2, float y2, float z2, float thickness)
Creates a visible line from point x1 y1 z1 to x2 y2 z2 with thickness thickness. Make it possible to change the colour.

I'm not exactly sure how to call it, but add a function that allows to change if an object is affected by lights or not (if not, it should always be at full brightness).
Also, a function that enables "wireframe" mode.


.M.M.

When I try to start the test game from the editor, I repeatedly get errors "Razorblade Plugin: Failed to draw indexed primitive for the mesh 'Pipe'..." and "Razorblade Plugin: Failed to draw indexed primitive for the mesh 'Hand'..." What´s wrong? I have done everything as Sledgy wrote.

Buckethead

This really has me speechless. Soooo awesome!! :o

Will try it out tomorrow...

TM

Quote from: dkh on Tue 10/08/2010 21:59:09
Thanks for the feedback, everybody, and the steps there, Sledgy. I'm working on the folder issue. The problem is the following: models reference the textures they need. In the 3d program the artist can apply a texture to a model (or a part of it). The engine will read that link, load the texture and apply it in-game. So far, so good. However, 3ds Max can apparently only store absolute paths to textures and not relative ones. So it stores the texture as for example "C:\whatever folder\textures\1.jpg" and not relative to the folder where the model is in ie. just "textures\1.jpg".

I think what you need to do is go into Preferences > Files > check Convert Local Files Paths to Relative

My website & blog

Guyserman82

Damn, now I have to make my RPG in 3D :). This is really cool! I can't wait for a Blender exporter.

Shane 'ProgZmax' Stevens

I just wanted to say brilliant work here, dkh.  You've really gone to a lot of effort here and once you've cleaned this up we can finally say Wintermute has nothing on ags.  Very nicely done, man.

GarageGothic

Quote from: ProgZmax on Sat 16/10/2010 19:45:28once you've cleaned this up we can finally say Wintermute has nothing on ags.

Just in time for the Wintermute 2.0 to go into beta, no doubt ;)

Icey

I cant get this to work, I keep getting this error were ags(latte's version) cant use the plug in or something. Basically ags cant start the plug in.

Calin Leafshade

Dude, 3D maths is wayyyy out of your league.. just let this one go.

Icey

I know but I got to see how it looks. Also if I see this it might give me a reason to push my self to learn how to use maya.

Emperor Justin

Quote from: icey games on Fri 22/10/2010 21:44:34
I know but I got to see how it looks. Also if I see this it might give me a reason to push my self to learn how to use maya.

Push yourself to do something small first.  You've yet to actually complete anything so throwing more things on your plate is a pretty bad idea.  But hey, whatever.  Can't wait for the next PMQ game that'll never take off.

On topic: that's pretty freaking sweet.  3D programming is beyond my limited ken of abilities, but I'm looking forward to the things other more tech-savvy people will produce with this! :D

subspark

All the hard work's finally paying off, good buddy. 8)
This is really great stuff. I wonder if we could use this to drive our custom pathfinding system for sprite based characters we had on paper?
QuoteDude, 3D maths is wayyyy out of your league.. just let this one go.
QuotePush yourself to do something small first.
Quotewhatever.  Can't wait for the next PMQ game that'll never take off.

Whoa :o, dread from another thread - did I miss something?! Go easy on the new kidz fellers! :)

Cheers,
Sparky.

Atelier

Seriously Emperor Justin, you're like following icey around. 15 out of your 17 posts have been wasted on him. Just leave him be.

SMF spam blocked by CleanTalk