dxgame
Knave
USA
73 Posts |
Posted - Apr 12 2004 : 1:39:19 PM
|
We're in the finishing stages of our new (2D+) game engine and we've thrown just about everything we can think of into this thing, while keeping it extremely high level and easy to use. If anyone has some ideas that they would like to see in our engine please detail your suggestions here, thank you. |
|
sdw
Warrior
USA
160 Posts |
Posted - Apr 12 2004 : 5:55:04 PM
|
Why not compile a complete list of features it has already?
|
|
|
dxgame
Knave
USA
73 Posts |
Posted - Apr 13 2004 : 10:37:58 AM
|
It would be a very long post. ;) |
|
|
VBBR
Moderator
Brazil
617 Posts |
Posted - Apr 13 2004 : 11:46:50 AM
|
Yeah but what if everyone keep saying features the engine already has? A lot of time loss... |
Whatever. Who knows... |
|
|
sdw
Warrior
USA
160 Posts |
Posted - Apr 13 2004 : 2:15:30 PM
|
In fact, I've searched through the docs and such to this thing and I still havn't seen a complete list of features yet. Instead of taking time to tell us there are just too many, take the time to build a list of features. So far I see maybe 10 features the wrapper has in the documentation. |
|
|
Spodi
Warrior
USA
142 Posts |
Posted - Apr 20 2004 : 8:05:24 PM
|
Well, as far as a 2d engine goes, I'd just have to say Fast and Flexable. Speed is a major thing for an engine, so having very optimized code is nice. Also, flexability is good so you can add whatever you want to the engine, since if you pre-code all the different effects and functions needed for any type of game, it will not only take extreamly long but bog down the engine. |
vbGORE |
|
|
masterbooda
Swordmaster
277 Posts |
Posted - Apr 21 2004 : 02:16:18 AM
|
I think the biggest feature of any engine is compatibility(...and good spelling)... What good would an engine do you if only privelaged folks were able to run it....... yes i'm talking to you(my video card cost more than my car) people.... Thats why we should leave 2d to directx7 and 3d to directx8... again I am clinically insane....... weeeeeeeeeee...
|
DaBooda Team is back: http://dabooda.789mb.com/ |
|
|
cbx
Swordmaster
Canada
296 Posts |
Posted - Apr 21 2004 : 05:36:35 AM
|
I am currently tinkering with a Map Editor for a game engine I am in the process of making.
To the gamer, the Game engine will appear to be a 2D tile based game engine, but in fact it will be a full 3D engine, that uses a OrthoOffCenterLH projection matrix to render geometry on the screen in a 2D manner. The geometry itself consists of untransformed and lit 3D geometry, So that the video card handles all of the transofrmations etc.
I have written a sample demo of a map editor that demonstrates creating a simulated tile environment using untransformed and lit 3D geometry. NOTE: That this LEDemo app is a compleatly separate app I made just a few minutes ago, so that I could visually play around with the basic principles of map making using 3D geometry to simulate 2D. And to give me insite as to how the actual map editor will operate when it is finished being written.
This demo also gets back the the reason(s) That I no longer suggest people use the Direct3D.Sprite class to draw 2D images on screen, but rather to use 3D untransformed geometry and render it using a OrthoOffCenterLH projection matrix.
The benifits of using OrthoOffCenterLH projection matrix and 3D untransformed geometry ...
- A much more powerfull alternative where as the Direct3D.Sprite class calls upon the cpu to do the rotation and translation math and using 3D untransformed geometry you can push the rotation, translation, and scaling work load off onto the video card.
- Greater oportunity to use one type of unified Vertex format throught your entire game engine.
- Ability to use/apply vertex and pixel shaders to the geometry. (Vertex shaders do not work with the Direct3D.Sprite class)
- Because the simulated 2D objects are actually 3D you have the ability to do deformations, and stretching effects to your geometry in ways that would be difficult or impossible to do using regular 2D.
- Saves you from having to create, manage and draw series of textures for your animations and Allow you to replace them with 3D alternatives that are more flexible and dynamic.
- For tile based engines, using 3D allows you to have 2 triangles representing a rectangle. Which means you dont have to store and render data for 100 tiles for example, but rather you would only need to render 2 triangles that have the tile texture texture mapped across them.
If you watch the demo and run the app you will get a better idea of what I am trying to describe.
http://www.geocities.com/createdbyx/index.htm http://www.geocities.com/createdbyx2/LEDemo.htm http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=2333&lngWId=10 The LEDemo.zip file includes the fallowing ... - VB.NET 2002 source code
- Demonstration video
- compiled executable
- 3 images
- the camstudio codec needed to view video
As for what I'd like to see in your engine ..... uhhhh I kinda just described it.... :p Tell me what you think of this approach everyone! I realize it's kinda late in the game to be rewriting the DXGame engine but I figured I'd put in my 2 cents. |
Created by: X http://www.createdbyx.com/ |
Edited by - cbx on May 06 2004 11:55:56 AM |
|
|
masterbooda
Swordmaster
277 Posts |
Posted - Apr 21 2004 : 4:15:07 PM
|
I have an engine that was written in vb5, if that will help you, the source is here http://www.dabooda2d.koolhost.com . It might help you find out what features are good, I tried to incorporate a good bit of them... |
DaBooda Team is back: http://dabooda.789mb.com/ |
|
|
cbx
Swordmaster
Canada
296 Posts |
Posted - Apr 21 2004 : 4:26:46 PM
|
Some more benifits of using 3D to simulate 2D ...
- Ablility to do zooming, panning, and scaling, quick and easy just by manipulating a matrix.
- You can still use the same code logic for determining what tiles are visible, and where they are located on screen.
- Allows you to have multi textured tiles.
- You can use 3D geometry and render over top of an area to simulate lighting effects or even shadow effects.
- Because the game uses 3D to render 2D tiles you will already be prepared to add and incorperate more 3D oriented features to the game engine in the future.
- You could use a 3D mesh of a rotating diamond rather then having a texture or series of textures of a diamond rotating.
- Allows you to use professional apps like gMAX or 3DS Max for creating your game levels and characters etc. Saving you from having to create your own and all the problems/hardwork that goes with it.
- Alows you to have multi textured tiles.
- Allows you to do multi layered platform games like this...
http://www.videogamedc.com/Pixeled_Parodies/Rise_Of_The_Mushroom_Kingdom/rise_of_the_mushroom_kingdom.html
Pay attention to the scene at the beggining when mario comes out of the castle and starts doing excersies, then jumps into the pipe to the left of the scene. (The next sequence is what I am talking about when I say people should consider using 3D geometry to simulate 2D tiles games.) The camera then zooms back and starts to show another layer with 2 pipes on it then zooms back even more and you see a whole new layer that mario begins to run around on.
You would be somwhat hard pressed to implement these type of game features using a traditional 2D base tile engine.
Again I realize that it is too late in the game to go back and redesign your engine, I am just posting more ideas for people to think about. |
Created by: X http://www.createdbyx.com/ |
Edited by - cbx on Apr 21 2004 4:28:08 PM |
|
|
dxgame
Knave
USA
73 Posts |
Posted - Apr 21 2004 : 10:05:20 PM
|
Hi CBX,
Good post! Everything you mention is either in our new engine or is on the "todo" list. :) Thanks!
And congrats on taking VB.net head on. Most of the shareware development community is not jumping on the .net experience just yet. ;) |
|
|
sdw
Warrior
USA
160 Posts |
Posted - Apr 21 2004 : 11:03:56 PM
|
This is exactly my reason why you should have posted a list of features the engine already has |
|
|
cbx
Swordmaster
Canada
296 Posts |
Posted - Apr 21 2004 : 11:30:13 PM
|
quote: Originally posted by dxgame
And congrats on taking VB.net head on. Most of the shareware development community is not jumping on the .net experience just yet. ;)
Early adoption is my curse. I can't help it. I like riding on the leading edge of tech. Heck I tracked down and downloaded a leaked beta of managed DX9 like 2 months before it was even released officially by microsoft. And a soon as VB.NET and the .NET framework was released I purchased my MSDN Professional subscription and compleatly stopped working on all my vb6 projects I had going at the time, and put all my focus on vb.net only.
Yah, it's that bad. |
Created by: X http://www.createdbyx.com/ |
|
|
dxgame
Knave
USA
73 Posts |
Posted - Apr 21 2004 : 11:30:19 PM
|
SDW,
This thread was not meant to be a plug for our engine (or anyone else's for that matter). We just wanted to see what ideas the typical 2D game coder might have in mind. Listing all of the features of the engine and then asking "what is missing" would just promote "out of the air" suggestions. Some of you might even reply with overly technical suggestions just for the cerebral exercise. ;)
When we get closer to releasing the engine ofcourse we will list every feature then. But until then, think of your own programmer experiences, what would you like to see automated, or handled automatically by a 2D engine? Think of something that really was difficult to code, something you saw in another game somewhere, etc,etc. |
|
|
cbx
Swordmaster
Canada
296 Posts |
Posted - Apr 21 2004 : 11:33:38 PM
|
Dude, you just posted 6 seconds after I did! Cool.
I was trying to figure out what the heck there was a post doing after mine and I glanced at the time ... |
Created by: X http://www.createdbyx.com/ |
|
|
sdw
Warrior
USA
160 Posts |
Posted - Apr 21 2004 : 11:56:11 PM
|
In that case, I would like to see a multi blitted character/sprite that will show off what types of items they are wearing, just like in diablo 2. Also, a questing system, speech system, item system, stat system, speech system, inventory system, and it goes on forever. |
|
|