Join for FREE | Take the Tour Lost Password?
[x]

deviantART

 
About Me Member Software Developer Tom Savage18/Male/United Kingdom Recent Activity Deviant for 4 Years
Needs Premium Membership
Statistics 171 Deviations
424 Comments
4,361 Pageviews

Aspect Engine - Attempt 2

Fri Apr 10, 2009, 1:40 PM
  • Mood: Triumph
  • Listening to: My 'Favorites' playlist
  • Reading: XKCD
  • Watching: Lab Rats
  • Playing: H.A.W.X/Battlefield Bad Company
  • Eating: Fishcakes
  • Drinking: Lovely Belgian hot chocolate
Over the last few weeks I have been working on writing a 3D engine from scratch. This is the 2nd time I tried this. Last time I had barely come to grips with the basics of DirectX and I didn't fully understand some important (but complex) programming concepts. My lack of knowledge and an overall feeling of "This is impossible" led me to abandon the project.

However, after learning the basics of using OpenGL and SDL, I decided to try again but starting from scratch using concepts I learned from the first attempt. So far it has progressed quite smoothly since March. So far I have:

- An 'Engine' class as the main point of contact for the engine.
- A state system with customizable 'Load', 'Close', 'Update', and 'Render' methods which mesh with a state manager in the 'Engine' class.
- A resource manager for models, sounds, etc.
- A 'Model' class which uses my own XML based file format (which I can export to from Blender using my own exporter script :D)
- A 'Material' class which defines colours, textures, etc for the models (again using a custom XML file format).
- A 'SceneObject' class which instances models with their own properties (like position, rotation, material, etc).
- A 'Map' class which loads in a custom XML map file and creates the scene objects.

There is still much to do before it can be used for an actual game (mostly optimization because there is much memory leakage, the rendering is butt slow when rendering more then a few objects and it takes a hugely long time to render all the assets).

If you're interested,the development blog [link] from the first attempt is still up and I'm still posting. If you're really interested (and maybe want to help out), you can view/checkout the source at Google Code [link] .

deviantID

No deviantID yet.

Devious Info

  • Current Residence: UK
  • Print preference: Yes
  • Interests: Photography, 3D, Photoshop, Web Design, Programming, Deep Physics, Mathematics
  • Favourite movie: Serenity
  • Favourite photographer: Me!
  • Operating System: Ubuntu Linux, Windows Vista/XP
  • MP3 player of choice: iPod
  • Shell of choice: BASH
  • Wallpaper of choice: Fish
  • Favourite game: Burnout Paradise / Assassin's Creed
  • Favourite gaming platform: Xbox 360/PC
  • Tools of the Trade: Nikon D40, Lightroom, Photoshop, Blender, Crazy Bump, Dreamweaver, Flash, VC Express, CMake, SciTE

deviantART Community Board

[x]

Comments


:iconkelly63:
Thank you very much for the fav!
:iconsamborek:
thanks man for the fav ;]
:icondaboomonline:
You're welcome! :D

--
UNIX Russian Roulette:
[ $[ $RANDOM % 6 ] == 0 ] && rm -rf / || echo *Click*
:iconmicephei:
Thanks for the Fav, Bro!!! :D
:icondaboomonline:
You're welcome

--
UNIX Russian Roulette:
[ $[ $RANDOM % 6 ] == 0 ] && rm -rf / || echo *Click*
:icondaboomonline:
Thanks! :D

--
UNIX Russian Roulette:
[ $[ $RANDOM % 6 ] == 0 ] && rm -rf / || echo *Click*

Site Map