Efter ett par dödshot (en involverade en bazooka) så är det väl dags att blogga ;)
![]() |
| I posted m'kay? No need to hunt me as per above! |
Så, det här är vad jag hållt på med. I sammanfattning så har vi nu implementerat i grafikmotorn:
Parallel-Split Shadow Mapping(half-half; not complete)(Stable) Cascaded Shadow Maps(not even started with; not sure why I put it here...)Deferred Rendering(decided it wasn't worth my time)- Deferred Lighting
- Hardware-Instancing
- Heightmap
- Detail Texture
- Multi-texturing
- Normal mapping
- Multi-Sample AA
- Particle Effects
- Physics (via JigLibx)
- Billboards
Tree generation(sort of; not finished)- Water rendering
- Ocean rendering
- Motion Blur
- Skysphere
- Animated Characters
- Character->Terrain Collision
- Character->Character Collision (yes, but not tested)
- (Weather Effect) Rain
- (Weather Effect) Snow
- Fire
Lightning -Sandstorm -- Smoke
- Snow
Ice
- RSM - Reflective Shadow Maps.
- LPV - Light Propagation Volumes.
- Bokeh
- HDR (Tonemapping)
- Colour profiles
- Grain Structure
- Object Placement
- Transform/Scale/Rotate
- (Basic) CC via Ambient Term
- Terrain modification
- Texture painting
- Tree Generation (not exposed via interface atm)
- Saving/Loading from custom XML data
![]() |
| In the picture above: an example of an animated character (the classical Dwarf.x) standing on the terrain with an ambient term of null to make it "black" and a cube for size comparison. |
![]() |
| In the picture above: an example of the sun modifying the cloud rendering along with the terrain using multi-cast. |
In all briefness, what I've got left:
- Real-Time Weather Control (RTWC) option
- Improved cloud rendering
- Improved skydome texturing (allow for larger texture sizes via caching/stitching)
- Improved particle rendering (allow for more varied forms of particles...and a lot of other stuff; too much to list)
- Add Particle Editor as a separate form
- Add Character Editor as separate form
- Improve detail rendering (add a total of at least three detail levels and improve transitions)
- Improve CC options (add global propagation and more options; saturation, hue, curves, et al)
- Improve terrain elevation editing (make controls smoother; improve performance; fix options; allow CTRL+C and CTRL+V editing)
- Fix buffer overflows, e.g. memory errors (=performance fix)
- Add proper Compile command along with custom options (-clean, -strip etc.)
- Add 'Lighting' as a mode/tab/whatever and allow for custom omnidirectional lights
- Add directional lights (allow for multiple casts)
- Add light 'bind' command (binds light to custom object -- much as 'chain' for objects)
- Fix .ecl extensions
- Add separate Script Editor
- Add ECPL commands (^SE related)
- Add new UI
- Add Quest bindings & options
- Add Sound cue placement
- Add event handling
- Add option to bind AI commands (ECPL) to events
Now let's talk builds. We're currently on build 14x moving towards 15x. Problem? Yes. Very much so. 14x is unfortunately a holdover more than anything else; it's crash prone and the interface sucks ass (not surprising given that the interface is yet another holdover from the ALICE project and hasn't been updated before being ported, re-hacked, and shoved into the current lvl editor).
Biggest problem though is that it isn't near 'functional' - it lacks many of the very basics that are required to build and finish a level. A bad UI is something you can work around; a crashing, performance driven, monster is something that you cannot.
With that said, what's the solution? Well, the answer really is: 'there isn't one!' -- while that may seem odd at first it really isn't; hard work is basically the solution. So, enough of that and let's have a look at what the 15x build will bring along in terms of visible change:
| Build 15x says hello and you can see the new (planned) UI in the above picture. Subject to change. |
As you can see, it's an ungodly lot better! Not perfect, but more than good enough. Now, before I can even start on the quest stuff and add anything else into the mix, I still need to understand Daniil's quest framework.
While all that is fine and dandy as far as planning goes, it still is kind of argh how this sprint seems to be turning out more-or-less as I feared. I don't think it's bad, per say, but it does seem to reinforce the whole 'tech comes first' debate. I'm having early flashbacks to the good ol' ZDay project in '08 when we were programming tools in C++ with a Python binding. While the switch was made to TGE after about six months it still is uncannily similar ideas behind this project and that one -- both were focused on an 'open free roamer' with large environment sets and both put down level editors (and other tools) as primary objectives.
I suppose it hasn't affected the overall project so far. I mean, we've gotten decent progress for the amount of work put in and there you have it. But I feel just about drained of any energy around now; tools development is/has not been my niche for almost two years and now I'm "back in the trenches" working on a neverending cycle of doom!
Suppose you could argue that the level editor "doesn't need all that crap" but then again, why do you need a level editor at all then? It's pretty much made to solve a problem (which is primarily "I can't manually place this much crap, we need to organize!") and if it isn't doing that then it serves no purpose. Not that I'm suggesting scrapping it, just pointing out the obvious (and why I am pretty much stuck with what I am doing from now >> onward).
Or, to put it another way, I'm starting to really wonder how well this will really work out.
That I'm pretty much sick all the time and can't help feeling like I can't even give 10% of what I usually give (after all, if I did, we'd be at build 15x heading towards 16x) doesn't help all that terribly much. Working on three of my previous projects as tools programmer can't have helped either (natural fatigue comes from these kinds of things I guess). In the end though, no one else has any clue how to work with the level editor's code nor the core framework -- without anyone able to pickup the slack it's pretty much up to me to finish the level editor; more or less. So...
Yosh! Let's be about it.




Inga kommentarer:
Skicka en kommentar