Author Topic: PLUGIN: Razorblade 3D - full-blown, modern 3D within AGS!!  (Read 11418 times)  Share 

Joseph DiPerla

  • Joseph DiPerla, Adventure Game Creator Wannabe!
    • I can help with AGS tutoring
    •  
    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with play testing
    •  
    • I can help with scripting
    •  
    • I can help with story design
    •  
    • I can help with translating
    •  
    • I can help with voice acting
    •  
    • I can help with web design
    •  
Wow. Nice Stuff!
Joseph DiPerla--- http://www.adventurestockpile.com
Member in this community since before 1999.
-The oldest member without ever making a full game...

Sledgy

  • Space Quest Time!
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
« Last Edit: 10 Aug 2010, 18:40 by Sledgy »

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

  • Order of the Maggot
  • Mittens Vassal
  • quite remarkable
  • abstauber worked on a game that was nominated for an AGS Award!abstauber worked on a game that won an AGS Award!
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

    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with play testing
    •  
    • I can help with web design
    •  
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!
In the beginning there was nothing, which exploded.

Thanks guys!! :D

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

    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with play testing
    •  
    • I can help with web design
    •  
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
Lol, well, programming is to me borderline magic, so I'm not rushing you or anything, just curiosity.  ;)
« Last Edit: 19 Aug 2010, 23:41 by anian »
In the beginning there was nothing, which exploded.

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.

« Last Edit: 25 Aug 2010, 06:25 by PaperJack »

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'..."
Only The Good Die Young - Wild West RPG created in AGS: now translated to English! Download here! facebook page: www.facebook.com/OnlyTheGoodRPG

Buckethead

  • No m8...
This really has me speechless. Soooo awesome!! :o

Will try it out tomorrow...

TM

  • on fire
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

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

  • Mittens Serf
  • AGS Project Admins
  • RON PAUL JUST GOT HUGE!
    • I can help with animation
    •  
    • I can help with characters
    •  
    • Lifetime Achievement Award Winner
    •  
    • I can help with AGS tutoring
    •  
    • I can help with proof reading
    •  
    • I can help with scripting
    •  
    • I can help with story design
    •  
  • Shane 'ProgZmax' Stevens worked on a game that was nominated for an AGS Award!Shane 'ProgZmax' Stevens worked on a game that won an AGS Award!
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.

once 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 games

  • Official Square Enix tester
    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with play testing
    •  
    • I can help with story design
    •  
    • I can help with voice acting
    •  
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

  • AGS Project Admins
  • Long live King Cat!
    • I can help with AGS tutoring
    •  
    • I can help with voice acting
    •  
  • Calin Leafshade worked on a game that was nominated for an AGS Award!Calin Leafshade worked on a game that won an AGS Award!
Dude, 3D maths is wayyyy out of your league.. just let this one go.

Leon: You need the sword first before you can get the monkey.

icey games

  • Official Square Enix tester
    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with play testing
    •  
    • I can help with story design
    •  
    • I can help with voice acting
    •  
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.

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

  • Some things, you just can't unsee.
    • I can help with animation
    •  
    • I can help with backgrounds
    •  
    • I can help with characters
    •  
    • I can help with AGS tutoring
    •  
    • I can help with play testing
    •  
    • I can help with proof reading
    •  
    • I can help with story design
    •  
    • I can help with translating
    •  
    • I can help with voice acting
    •  
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?
Quote
Dude, 3D maths is wayyyy out of your league.. just let this one go.
Quote
Push yourself to do something small first.
Quote
whatever.  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.
     
Adlanto - A bold step into a valley of forgotten worlds - Coming Soon to Steam in August 2015!       Indiana Jones and the Fountain of Youth - Indy is back!

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