Monday, 24 November 2014

In Support Of Multi Materials

Multi-material models from the store have been the real subject of todays grafting, with the entire city pack built on these foundations. Not necessarily loading them in, which works fine, but light mapping them. The currently lightmapper was strictly designed handle one light map object per one entity, but the MM models could have any number of objects for a single entity, each with their own texture.

The current build as of Friday could take a single material from the model and lightmap it, discarding the rest. Monday was about allowing the lightmapper to discover the rest and include them in the process. As the old system was a one-object based system, everything needed updating, the data structures, the load and save, the consolidator, the lot. 


This is my progress by 9PM, with all six materials separated, submitted and lightmapped (to some degree).  I have an all day meeting on Tuesday so cannot stay up too long, but I think I am over the hump now and it's just a case of calming down the shadow objects, restoring the floor plane, e.t.c.  Slowly slowly, catchy monkey!

App Game Kit 2 continues to do great on Steam, and is providing useful information and statistics to help us plan our Reloaded launch early next year. For more info on AGK2, here is the Steam page: http://store.steampowered.com/app/325180/

Going to put another hour into finishing the lightmapping of MM models, and then make a build for the meeting show tomorrow.  The agenda is quite full so need plenty Z's so I don't fall asleep half way through, but rest assured on Wednesday the fixing continues as I make my way though the list of items fed back from the weekend alpha testing.

Saturday, 22 November 2014

AGK2 : 24 HOURS AFTER OUR STEAM LAUNCH

Well what a trip that was, our first ever Steam title launched into the world and what a smooth birth it was too.  Admittedly I only stepped in to bask in the limelight of the release, having left the muddy murky world of having to develop it, but it seems my absence from the project probably improved the product overall :)  As any expectant father would, I set up the revenue page on my browser and refreshed it every hour for a whole day (with a few hours to sleep) and it was a real buzz to watch the number increase every time I pressed the refresh key.  Alas I am not permitted to reveal the figures by order of Steam HQ, and I suggest you do what Steam developers before us advised, which is come and see for yourself. If that's not an invite to finish your game projects and get it onto Steam I don't know what is :)



We started off modestly in our very own 'Game Development' category, but listed in the New Releases chart very briefly on the day of launch. The cynic in me said to take a picture because we would not be here long, remembering the sting of all those iOS and Android apps we developed over the last few years.



We then stumbled into the Top Sellers spot for the 'Game Development' category, probably due to the huge discount on offer for our launch week.  It was still nice to be there and gave me a nice warm feeling, and a delusion of what it might be like to stay there a little while longer.



We then surfaced and achieved top spot in all three tabs, New releases, Top Sellers AND specials, AND a first banner slot when I visited the site (for the hundredth time).  Seemed like the whole world was App Game Kit 2, and life felt good.  Admittedly a big puffed up fish in a very little pond, and probably only for today, but it still felt good.  What made me feel a little better was what happened next.



Our little game maker had escaped the confines of the 'Game Development' category and was now dancing about in the GENERAL News feed for the WHOLE OF STEAM, and in the number one slot too!  Don't ask me how it got there, or why, or whether it lasted more than a minute, but it was great to see.

I don't know what the future holds now. We have a great marketing tag team behind the product, a driven and seriously overworked lead programmer spearheading the development of this game changing tool and a company which has spent a considerable number of decades catering for the needs of budding game designers everywhere.  Combine that with the biggest distribution platform for the PC and we have everything to play for, and opportunities abound. I am big fan of competitions though, so expect a BIG Steam based competition off the back of our launch in the very near future with great prizes to get people excited (if the bank manager lets me).

If it was a choice between a 'state of the art PC gaming rig' or 'a device for every platform we support', which top prize would you prefer?  Nothing says 'look at me' than a huge sexy prize!

It you are interested in taking advantage of the launch discount of 33% on the regular price, you can visit the Steam store right now with this link:

http://store.steampowered.com/app/325180/?snr=1_4_4__tab-Upcoming

I recently watched a YouTube documentary short called 'Becoming YouTube' which had a great mix of humor, introspection and information that propelled me through all 12 episodes. Still infected by the inspiring insights of this intrepid investigation, I got to thinking that perhaps a short YouTube documentary entitled 'Becoming Steam' might be a suitable continuation of this invaluable public service.  Unfortunately, I am not an actor, nor attractive, have no production facilities, no time to record, let alone edit the footage, no Steam developers to interview and no journalistic skills whatsoever. Given these minor disadvantages one might conclude that a series of episodes on becoming Steam might do nothing but damage and distort what is a truly amazing experience that every developer should feel before the world moves on again, not to mention invite a lawsuit for the use of the adjective 'becoming' in this particular context.  I was also thinking of dying my hair bright green (as it rhymes with steam) but it's easy to take these flights of imaginational fancy too far.

As you know, my own active involvement in the launch of App Game Kit 2 on Steam was a dress rehearsal for the product that I am pretty sure is set to sweep aside all previous records for sales of a game creator on Steam.  I cannot think of a better vehicle to gauge what the Steam community want from a game creator than by giving them another game creator and listening to what they have to say.

I have been promising myself a nice distracting game for weeks now, and this very second I feel like returning to my gamer roots, so I'll leave you with this rare weekend blog post, invite you to check out the AGK2 Steam page and see you again on Monday when I resume my blog on the trials and tribulations of an overworked under-appreciated insanely happy game engine coder.

Friday, 21 November 2014

App Game Kit 2....IS ON STEAM!!!

I am keeping todays blog short and sweet. Aside from some good fixes, and some more work later this evening to make a build for the alpha testers, and a hell of a battle with converting multi material entities to regular ones for the light mapping process, the MASSIVE news today is the launch of our App Game Kit 2 product on Steam:

App Game Kit 2: Easy + Instant Game Development


If it's within your power, please help us promote this and spread the word so we can make a Steam splash!  If you think there is something my team or I can do to further our success with this launch, comment here and I'll be all over it. The official steam page is here:

http://store.steampowered.com/app/325180/?snr=1_4_4__tab-Upcoming

I will be doing more Reloaded work over the weekend as well as keeping half an eye on the AGK2 release, so fingers crossed everyone for the next 24 hours :) We should learn a LOT from this launch, and have a great template for our second major product, Reloaded, early next year!  Until then, have fun exploring App Game Kit 2 and have a super weekend!!

Thursday, 20 November 2014

Oh My Poor Head

I feel like a hollowed out water melon today, largely due to the mixing of Guinness and Newcastle Brown Ale. Turns out the pool match was cancelled so decided to play a different game called boozin'.  That's my social life done for another week, and now back to the code!


I continue tweaking and refining the lighting system, and now the fog works across all the various shaders and it's looking pretty neat.  Currently working on fixing up the Super Terrain Mode, which when working allows you to replace the terrain which is a performance and memory hog with a simple flat polygon, allowing things like city and interior scenes to be created.

Not sure how much time to dedicate to Super Flat, as I am now straying into lightmapping it and it was not on the original list, so hopefully I can get it squared away and move onto more interesting issues.  Bottom line is that V1.009 alpha build is looking very nice now, and I am hopeful the alpha testing team will agree with me :)

App Game Kit 2: Easy + Instant Mobile Development

In other BREAKING news, we are about to launch our first product on Steam! As some of you know AGK2 has been brewing in development phase for some time now, and we're very pleased to be able to officially launch it to the masses. 

You can find our Steam page here: 
http://store.steampowered.com/app/325180/

It is particularly relevant to this blog too as this launch allows us to make a dress rehearsal for the launch of Reloaded on Steam next year.  Any mistakes we make will be a lesson learned for when we go public with a V1, and hopefully maximize our impact there and make it a great release.  If you've already pledged to the AGK2 kickstarter you'll be getting your free Steam keys soon, and for everyone else who wants to start some mobile app development the easy way, we have an early bird discount available when we launch AGK2 tomorrow.  Exciting times!

Wednesday, 19 November 2014

A Day Of Light

Some good fixes today, including extending the dynamic lights to MEDIUM shader techniques and making them the default. The upshot is that users can drop in dynamic lights and see the results of them instantly which is exactly what you want for a new user.  The best news is that the addition of these light calculations only drained a few FPS from the already high 90's which in lee-man speak means it's as good as free :)


I have modified the GTTR (Get To The River) level to include a static and dynamic light, plus a new scripted entity so you can switch the dynamic light on and off. Really happy with the overall work done on lights, and aside from some gaps I am sure still exist, we are getting closer to a V1 for the lighting stuff.

I certainly need to include the grass in the dynamic lighting fun to blend it all together, but at over 90 fps with dynamic lights and pre-baked good definition shadows, and dynamic shadows for dynamic entities to the floor, I'd say V1.009 is certainly going to leave it's mark.

I know there are more effects I can do with the overhead lamp machine, such as lens flare, volumetric light rays, some subtle sound effects and maybe the occasional moth flying about the bulbs, but the mission has been and will remain the completion of the core elements of the product, which means drawing a line on this one for the time being and moving onto other urgent matters like memory management, overall system compatibility and the remaining missing features of the engine/editor.

Also, I added a new slider called Fog Intensity, which turns out to be pretty cool as it allows me to make atmospherics effects without washing out the distant mountains.  Notice how the characters (which are not presently using Fog Intensity) are washed out, but the rest of the scene is bathed in a soft fog.


I have another 20 minutes of coding, and then I am off to play a few racks of pool to unwind and study the miracle of Guinness up close.  Thursday will see the various shader tweaks applied and tested, plus a slew of additional critical fixes reported so far by the alpha testers.

Tuesday, 18 November 2014

New Dynamic Light Script Commands

Aside from some basic reflection tweaks this morning, the major addition was inspired by one of our premier alpha testers, who wanted once and for all, control of the dynamic lighting. To this end a new script command was added called LightSwitch.lua using two new commands HideLight(e) and ShowLight(e). Basically you can now add a dynamic light, associate it with this script and when you get near it you can toggle the light on and off by pressing the E key. Simple stuff, but long awaited and opens the door to the 'rest' of the dynamic lighting commands via script.

The biggest chunk of work however was last night when I finally fixed the annoying shadow flicker issue, and made some good improvements on the visual side such as dynamic and static lights working nicely together with the pre-bake scenes.  Also gained some extra performance points along the way for various reasons, and now my Escape level easily tops 60 fps at the start and the GTTR level tops 90 fps as well which has never happened before now.

I also found a way to speed up the Editor IDE for levels which have a lot of entities, creating a smoother scroll and entity selection experience.

Been a long day on the road this afternoon so not much energy left for much coding, but I have my email open, my code standing ready and a juicy bug that relates to 100 characters so might do one or two more before it gets super late. In other news, and exciting news at that, we've just received the release authorization for the forthcoming launch of our App Game Kit 2 product on Steam, penciled in for this Friday.  For those not in the know, AGK2 is our cross platform development language which allows you to write apps easily and deploy them instantly to all the popular devices. We have already had mucho success from apps we created with this tool, and now you can tap into the same power house of functionality for an amazing price. Watch this space for news of the Steam launch and a great early bird discount to get you coding mobile apps sooner and making your very own iOS, Android and Windows hits!

P.S. Sorry for the lack of screenshot today, it was pretty hard to take a shot of 'not flickering any more and a lot faster' :)

Monday, 17 November 2014

Weekend Warrior Of Work

I did some coding at the weekend, and made a little break-through with the 'Get To The River' level which now runs at over 100 fps (hurray!) on LOWEST.  It was my goal and with some careful grass optimization was able to push it over the edge. I also made other performance improvements such as hiding the duplicate static entities when LM objects where in play, and lowered the pain on the reflection system today as well so it's now even faster. Ouch!


I posted this on the forum to show the difference across the ages, and also to try and pinpoint why the feedback I am getting from the alpha testers suggests that visuals have gooten worser.  After balancing the GTTR level with the new sliders and lighting equations, this is what I ended up with:


Don't worry about the 92 fps, it's well over 100 fps when you create a standalone version of this game. Notice how I've matched the colour balance with the early V1.0071 shot, and improved the detail on the HUD weapon since V1.009 shot, and the grass is actually better in this one that the first shot.  The HUD weapon is slightly different as I discovered the V1.0071 engine reversed the light direction of the weapons, so that was fixed up too.


I also experimented with the new static baked lights.  Ambient occlusion is still O.T.T but you can start to appreciate the power of a few static lights for interior scenes using the pre baker.  This scene has an off-white light on the ceiling and a small static green light over the barrel to give it a radioactive look.

Spent half the day transcribing bugs from the forum to the work sheet, and now have to go through and prioritize them before I can actually start some fixing. The good news is that the alpha testers are being very thorough which means a solid V1.009 for you when the time comes.  Going to give the doggy a walk now while it's still light and then return this evening for some actual fixing and to tick off a few more DONE items.