Another thing Leadwerks does really is piles of rusty garbage. We needed something to shoot at on our firing-range that resemble old vehicles. Photographs of target ranges will show large white tanks painted on the ground, or have descriptions including old cars and containers. As this is video-game land where assets are virtual we can do what we like. We can populate the firing-range with rusty cars and Russian Tanks/BMPs.
I really need to sort out some procedural grass somehow. It would add so much more depth to exterior scenes, can't use engine veg for grass as it's simply too much data for the large outdoor areas we use and shouldn't be necessary. This is one area where Unity really scores. Mixing the large and the small is something neither engines are great at, Leadwerks has more positives in this regard even though they are both really made for creating small scale level based games.
Completed some bug fixes today, waypoint selection was confusing, the HUD was telling me to go in the opposite direction to the map, which is down to the helicopter being aligned down its negative axis.
Also the special effects system we need for 'blowing stuff up' is taking shape. For days (weeks) I kept putting it off as I'd think about how it should work, how well it would scale, changing my mind. Problem with OOP programming is that there's more than one way to instantiate cat skinning. I'm a visual person (right brain dominance), terrible verbally, in phone interviews I can manage my name and sometime my phone number. When it comes to programming complex systems it's easy as pie to see them in my head as dozens of discrete interactions but don't ask me to describe it (blog writing isn't improving my skills any). However the FX system had many versions running around my brain with no clear advantage to either approach.
So I'm adopting a singleton effect manager. As this is easier to scale and debug. Each effect type (smoke, fire, crater etc) as it's own class instance added to a linked list, each type managing the max lifespan, max count, update logic. Some effects being less resource hungry than others can be processed over several frames, others are more dependent on time between frames. This is easier to control in a single manager. I don't know if this is also what might be called a factory? It's been so long since I worked in a office with real people I'm not clear what current terminology would be. Someone asked me about design patterns the other week, I thought they were talking about bloody knitting, even though we'd been using re-usable code concepts for over a decade. I blame yuppies and their fancy frothy coffees.
Aha, it could be considered an "Abstract Factory Pattern" (I just looked it up). Really don't care what you call it. It should do the job as adequately as any other approach and be a bit easier to maintain and debug.
To finish, here's a screen-shot of a fuel bowser and interior of the gas station...although you wouldn't normally get to see the interior in game. Why does it make me think of Duke Nukem?
Ground test cannon fire on static objects. Each round impact is creating two emitters, one for dirt material and another for dust/smoke. Work needed to give it more visual 'pop'.
Smoking or non-smoking?
The above shot for Pavel. Showing dust from a 10 round burst at an object 10 meters away. Dust duration is now set to 16 seconds.