The Daily Click ::. Projects ::. The Chronicle Engine
 

Project: The Chronicle Engine
Project Started: 12th August, 2011 Last Update: 22nd August, 2011
Project Owner: Golem Project Members:
Project Type: Engine Project Progress:

Project Overview  
Preview So, I decided to start working on a Java game engine while I have nothing else to do. The Chronicle Engine seemed like a nice name that is not taken. Atleast to my knowledge.

This will be a fairly simple engine, aimed at making retro-ish games in 3D. Basically, I have a sidescroller in mind, but it'll be more flexible than that. I'll be using LWJGL.

Stuff to add:
[ ] Level Editor
- [ ] Tiles
- [ ] Props
- [ ] Entities
- [ ] Misc.
[ ] Voxel Editor
[ ] Animation Manager
- [ ] Sprite/Texture
- [ ] Voxel
[X] Scripting
- [ ] Dialogue
- [ ] Camera
- [ ] Actors
- [X] Misc.
[ ] 3D Tilesets
- [X] Model
- [X] Voxel
- [X] Box
[ ] Animated Textures
[ ] Bitmap Fonts
[ ] Pathfinding
- [ ] A-star
[X] Switchable Palettes
[X] Model Loading*
[ ] Model Deformation and/or Bones**
[X] Sound (WAV, OGG)
[ ] Light/Shadows**
[ ] ...

* .obj support, at least.
** Maybe.

This project is mainly meant for me to level up my Java skill, but hopefully I can share some of the experience. I might even go open source, and write some articles. We'll see.

Project Forums Topics Posts Last Post
Public Forum
Public forum for open project discussion
0 0 No Posts
Private Forum
Private forum for project members only
0 0 No Access

Weekends Are Too Long
Posted 22nd Aug 11, by Golem Post A Comment
NEW
While there is not too much new stuff this time, I've actually reprogrammed the engine from scratch about 4 times. I got a bit discouraged after the third time, but this last iteration really hit the spot, and the engine is alot more flexible now.

Actual new stuff includes:
[X]A brand new rendering system that allows you to write plugins for additional rendering support.
--[X]It currently supports Voxels and Lines, and I'll soon implement triangle and quad rendering.
--[X]Displaylists were dropped in favor of easier palette swapping. I think I'll manage without the extra performance. (This isn't ID tech 5 after all.)
[X] A similarly pluggable asset loading system.
--[X] Current supported formats are my own overly simple voxel and line model formats. Soon to come is obj models and bmp/png/tga textures. Animations are currently out, but will be re-implemented as loadable assets.
[X] Simple collision detection is in. Yay.
[X] Game States are in. Now you can have menues, inventories and all that good stuff. Heck yeah!

STUFF TO COME
I'm keeping it a bit open for now, but definitely animations, models and textures.

I also feel a bit more ready to start writing tutorial articles soon. Don't worry, I'm kinda newb myself, so expect articles that are fairly easy for beginners to follow. Provided you have some basic Java knowledge.
Moar Progress
Posted 18th Aug 11, by Golem Post A Comment
New Stuff
Today I've implemented display lists and animated voxels, which tied together perfectly. Each entity keeps a list of pointers to the display list of each frame in its animation. The animation itself then points to the entries in this list.
It took a while to to implement, and most of the renderer had to be rewritten. Looking back though, it couldn't have been simpler.

I also implemented scripting, which was surprisingly simple. Although I have yet to test it thoroughly. I wrote a behavior interface that simply contains an update function. This allows an entity to point to an object implementing this interface. Any object. So basically I can now write my scripts as Java classes. Pretty good, no?
Ofcourse, I've yet to write any script functions. But that'll have to wait alot longer.

Upcoming
What's next then? I foresee more rewriting of code to perfect animation loading, which also needs to be implemented. That, and level loading will probably be my next steps.
I'm wondering if I'll need any kind of compression for this. From my experience with compression in Lua, it was a tough nut to crack.
Progress
Posted 17th Aug 11, by Golem Post A Comment
After some tinkering with OpenGL stuff, my engine can now load and render voxels from simple data files. The harder part was to get the camera movement right, and it's still a bit buggy I think.
If someone knows the proper calculations for moving the camera in OpenGL, let me know. What I got from NeHe's OpenGL Tutourials was a bit incomplete.

Furthermore, I think I'll limit myself to voxels for now. I'll decide if I want to add model support when the engine is a bit more fleshed out.

I also made a quick and dirty voxel editor using MMF2. And I really mean quick and dirty. It will do for testing, but I'll make a proper one using the Chronicle Engine itself later on.

View Project Archive


 



Project Forums


Favourite

Advertisement

Worth A Click