Like my other RTS project that is fully on hold at the moment, I finally made a full roadmap of my new project. The current scope of the roadmap is up until prototype. I started to slack a bit (since I'm building this at home and not full-time), I noticed I wasn't as productive again as when I've planned projects in the past. Playing games with friends or whatever you do to kill time, is fine as long as you are sticking with your schedule. I finally laid out my schedule as a cost and hour estimate. If you don't plan, your project is probably already failing because every day you are winging it. Amateur mistake. Know your numbers. Also, estimate more task hours than you think just to be safe. Finishing early is better than falling behind. Right now I'm at about 350 hours of work to get my prototype done.
I started working on game ideas when I was 16 (15 years ago). When you meet people online (modders, other interested young people), everyone has their own idea of the game you are collaborating on. What happens wrong with this is you empower everyone to feel like they are a creative director. Not everyone should comment on other peoples art (especially if they are programmers). Let the art people do it. Let the design people design. Concept people concept. You end up with a team forum of postings that are too indecisive or not fitting to their personal vision. This guy likes that, this guy doesn't like that. Everyone chimes in on all aspects of the game and it does. not. work. Also, not how a game company works for the same reason.
With my current project, I actually pay artists. I had brought on a few people that liked my initial game idea into an online forum. People that might contribute more than just some 3D art. Today those few people are gone. I'm not 100% sure why, but I feel it comes down to being more attached to the project, than just enjoying doing 3D art. Because when you are brought onto a team in such a manner, you have been promoted from 3D artist to creative director. My other external artists however are still around, and happy to be doing what they want to do 2D/3D art. Completely different dynamic. It also shortens the amount of things I have to type and hours wasted in managing the team. I just receive work via email, suggest changes, email back. It isn't a whole discussion on what we are looking at, how it could be better. If someone thinks the gun design has a piece on it that looks too big.....this leads to a lot of my time being wasted writing on forums. If you want to update people on project status, do so 1 on 1.
Anyway, here's a few of the new art assets.
Nothing interesting really to talk about, just been working towards getting a simple gameplay demo. I've been trying to keep my 2 concept artists busy. I have a sculpting artist and a hardsurface artist working on stuff when they can as well.
Most of my time has been bringing in assets, basic level design, model + texturing. I also started using the https://code.google.com/archive/p/nvidia-texture-tools/downloads tools to properly compress my DXT textures. This definitely speeds up loading times and improves texture quality immensely.
I used to load in jpg images and either choose to load them compressed or uncompressed. Bringing in some high quality textures brought my load times up to 180 seconds. Loading DXT images in directly brought it down to 13 seconds. I've also written some other options for fast loading into game. It is always important to get into game immediately. I have a couple options for this: 1) Don't load textures (use default gray texture). 2.) Load low quality textures (Upon loading a high quality texture, if it is newer than its low quality version, I will downsize it and save it to a "Low Quality folder for later use if you want a fast load in to game"). I save all textures to 512x512 for the low quality versions. This bring my entire load time to 1 or 2 seconds using this option.
I'll just leave some images. Next update (whenever it comes) will be some real-time gameplay. I have a lot of work ahead. There are some extra images posted on my channels https://twitter.com/dpadam450 | https://www.facebook.com/GrenadeGamesOfficial/
Its a new year, so time to buckle down hard. I was never big into maintaining a journal on here but I started a journal last July about my RTS game ICBM. At the same time I was lightly managing a small online team for another project of mine. This other project I pay some contractors for and is my goal game for 2017. I knew these projects would conflict with my time and I planned to go full-time to this other project around December/January, in hopes that I might be pretty close to done with my RTS game.
Quick Status Update I started my LLC in July 2016. I spent roughly $4,000 on direct contract work for art. I spent about another $2,000 on all other stuff: software, administration stuff, tablet monitor etc. As stated in previous journals, business costs are deducted from your yearly income, so I will get back the taxes I already paid on $6000. So that is money coming in for me to spend on my project.
I also lost a lot of focus during the Killing Floor 2 release, both in working a little overtime, stress, and just not managing my time well at home. I'm also back to doing graphics on a tight timeline for a project at work, so I really hope to not have any crazy things happen at work. But I still have a job making money and either saving it or spending it on my LLC.
The New Project
First, I will be posting a piece of 3D art, concept art, or other interesting things every day this month on my twitter account Grenade Games @ dpadam450 or https://www.facebook.com/GrenadeGamesOfficial/. I should be able to continue this daily stuff through February as well. I'm keeping my journal here strictly to development updates.
The project is a 3rd person shooter. Design ideas are just too much to talk about/share. I've been working with about 6 people part time to produce some artwork. I give them 1-2 3D pieces a month, or a handful of 2D rough's + a final 2D concept. My role has always been unique because I have a background in every aspect games. Sometimes I will take concept art and bash concepts together or rework some ideas to give back to someone else. I'll mess with substance files a lot to change textures/materials. I'll re-topo sculpts to low-poly so I don't have to pay for work I can do. I do make some art assets from scratch well. So it has been fun working with people, giving feedback and seeing them iterate on the feedback. It's also been a bummer that a few of my contractors have picked up other bigger contract work or have picked up full-time jobs and have lost time or interest to continue on. So I'm hoping that coming on board full-time now, that I can get some work done and motivate them / get some more people interested.
With that, I will leave a couple images that I will be posting. My focus this month is to get some gameplay action. I have a bunch of random assets/characters that I want to start pulling in and mashing up for a prototype demo.
*Edit* Oh yea...Killing Floor 2 is releasing soon and I'm responsible for the PS4 version, so I'm hoping no OT, but my project may lack updates for a couple weeks depending on how that goes.
Other New First I've decided to give the go ahead on my second project. It seems a bit crazy to work on two game projects at once, especially when I have a full-time job but I'm planning for big things. I was tossing around another idea at the beginning of the year for a small in scope 3rd person shooter project and I really want to have some people get started on that while I'm working on my RTS. I've budgeted $1600/month between 5 contractors (2 concept, 3 3D). I spent a lot of time finding people for this project, collecting reference images and writing down ideas. All of this stuff has taken a lot of time so my RTS game has been neglected for a while until about a week ago I was able to start picking it up. Even writing a few emails back and forth multiplied by 15 potential contractors took a ton of my time.
I remember years ago (like 10 years ago) trying to find members for an inexperienced indie team and I can say that 1.) The amount of talent looking for projects to work on is of much higher quality than ever before and 2.) There are people who want to work on the right team and are willing to take a lot less in pay to be on a team or build their portfolio. Getting your first job in games can be tough. My basic structure for now, to get my project rolling along at a slow pace is: I have 5 people that are mostly on the same deal: $10/hr + $20/hr in royalties each working 30-40 hours per month. At some point I myself, will be putting in 40 hours a week on that project when the time comes. Also, I'm excited with the talent I have found and they have been working out well so far.
ICBM Again, pretty slow updates. So first, 10 years ago I had a year of c++ programming down and just started messing with openGL. I had a small RTS project then that I built over the summer. Here is some laughable history of where I came from.
ICBM then was being made as a real-time version of an old game called Metal Marines, which was a turned based strategy game. It involved sending mechs to other island, but I have since stripped mechs out. The original prototype for my game looked something like this 2 years ago. I started prototyping with some simple models and what not.
The current state of the game looks something like this now. I got to adding in a PBR shader for some of my models and retexturing them in Substance Painter. (No MSAA or FXAA turned on).
I've also added a projective decal for launching nukes and missiles at a given location. I also went and added some geometry to my trees. Before they were just 6 sided cylinders with basic normal maps (they were ugly).
Most Important Part of this Update: Mixamo One of my artists who was working on a high poly sculpt mentioned he had tested putting the characted into mixamo and seeing how well it animated. I had come across mixamo or something like it in the past, but let me just tell you it is awesome. All you have to do is upload your character, place some bone areas and it will weight your entire mesh, fingers as well. There are a ton of animations to select that you can pack up and export. I bring those into Blender and have to manually copy each animation dope sheet to a main one, and it works since all the fbx skeletons have the same bone names. I'm really excited because of the amount of time that saves me in getting some results from a character that is right from being finished. Definitely worth looking at.
Hours till prototype complete: 177 Hours logged July3 - July 16: 43.5
I finished adding in animated sequences for my particle systems as well as my C130 paradrop functionality / animation. I also finally registered my LLC as well as trademarks. Didn't get a lot of stuff off my backlog list. Touched up some textures and what not. Going to have to get on track, but sometimes you have to spend time to make things look nicer.
Here is a video of the new features.
I'm not sure yet what I want to tackle next. Maybe start refactoring my networking code and get multiplayer to start working a bit. Even thought there isn't much gameplay, it would be nice to start seeing some networking since I do have a lot of stuff working, just not complete.
A note on the particle systems: If you are going to use an animated sequence of 2D images for particles, these are 49 frames. I tried some other particles that only had 16 images in a sequence and they looked bad. Each sprite in my particle sequence is a little more than 256x256.
I'll start with a video first. The video shows a lot of randomness, but it shows the prototyping of some AI and completeness of gameplay AI, sound, particles all starting to come together.
Not everything I have done is in this video. I had a couple bugs with some other things that I decided not to show. That is always something that is hard to figure out: what to show, and how it will be received. How buggy/incomplete can a feature or piece of art be before showing it, even if you are in an early stage. It is always hard to explain to non-developers that "I know everything doesn't look great, but Imagine if that explosion was sweet and that 3D model looked sweet. Everything is halfway complete. Bugs and incompleteness are ok, games take time and iteration." Even my best of friends don't get it and say "yea that sucks, your game sucks." ...no sh**. It's not a game yet :) Last week I decided to create a tutorial as another way to reach followers. My last 2 weeks I created a new game and company logo. I also setup twitter and facebook accounts and have been posting around some communities I belong to (here, blenderartists, polycount, indieDB) etc. I plan to register my LLC and trademarks this week. A lot of random art and programming cleanup was mainly what happened. I spent some time creating my backlog of work so that I can track my progress and know where I am at.
Right now I have an excel sheet tracking work. My backlog of tasks is about 180 hours worth of work to get to an alpha prototype of the game. You can see below the tasks that I actually finished the last two weeks. I've undertasked myself or brought in tasks that were unplanned for. I'm hoping this week to now get back on track.
Thanks for following.
I was once discussing with someone how they were creating normal maps in this thread. https://www.gamedev.net/topic/666662-normal-map-generator-from-diffuse-maps/
The basic idea is (and we have all done it), you take a photo texture. You use that photo for your diffuse, but you have normal mapping in your engine and you want to show it off. You simply take that texture and run it through a normal map generator....great! you have created surface normal representation from a picture that contains light intensity. Light intensity has nothing to do with the surface representation. A height map however does contain surface information and from it we can generate normal maps from it. And they will look glorious.
Lets look at the final results first. Here the left portion of the texture is creating a proper normal map from this tutorial. The right portion of the texture is simply taking the photo of bricks and putting it right into your normal map creator.
I use GIMP for reference with the normal map plugin. ***If you use this plugin, the default scale of 1 does not create very slope based/tall normal maps. For these textures I set the scale/height in the normal map plugin to 12.
Lets get right to it. We have some bricks we want to normal map.
Here is what I'm talking about with heightmaps vs a photo texture. I have manually created some blocks at the top in all white to represent height of bricks. I blur this by 2 different amounts and you can see the results. The hard edged brick just creates a hard normal 1 pixel big. This is basically what happens when you take a picture and normal map it. It takes a pixel, and it looks at the neighboring pixels to use for height values. Since most pixels are about the same color, it just creates a bunch of random 1 pixel edge normals.
At the bottom of the height map, you will see what I did with our brick texture. I created a heightmap manually from it. I did this by using the GIMP select by color tool, and changing the Threshold until it selected all the low gaps. I selected that part as opposed to the bricks because the gaps are mostly the same color, just a gray concrete. Once selected I painted all that area with pure black. Then I inverted the selection and painted all the bricks pure white. We now have a height map representation of this brick texture. Remember though this will give us only a pixel slope at best, because the difference in pixel values is black to white within 1 pixel edge. So I blur the result, so that it goes from 0 to 1 over the course of many pixels. This gives a continual slope/change in the heightmap values.
Here is the normal map for reference.
Here is a render. Left brick portion is my method, right is just straight diffuse to normal map.
Doesn't look very good. Lets add specular. Specular adds much more life. Here is our specular and the resultant image.
Ok, but our heightmap is so blurry and smooth. Bricks are pretty rough. So what I did, and you can see in the above normal map and heightmaps is: I took the original diffuse texture and normal mapped it with a scale of 12 as well. In gimp this is a second layer on top of my other normal map and I simply turn it to grain merge. This combines them nicely. I get those little 1 pixel or so variations in normals. I get some dings and what not. This is the result.
Conclusion And here is some close up's. Here is without adding the micro details of the 2nd normal map merged. The left portion of the texture is the bricks with my method, on the right is simply taking the diffuse and pushing it through a normal map generator. Take the extra few minutes to make your normal maps better, especially brick textures.
And this is the final result of the two normal maps merged.
Welcome to my journal.
Don't want to spend all day typing instead of working. I've been doing small hobby projects here and there that always seem to fail via burnout and overall lack of motivation. I think I've had 10 different game projects over 10 years now. I'm really pushing to see a project through to the end and starting some form of game company. I've worked at a few game companies, including EA, and I think it is time to really take the reigns of what I want to do, a position I can never have unless I make it myself: Studio Head / Creative Director.
Right now I'm a one man shop. I've picked up my old RTS project that was initially started 2 years ago. I've been crunching about 5 hours a day for the last week or two. It is called ICBM and is an island based RTS game. Battleships, Submarines, Aircraft Carriers, ICBM nukes.
Anyway, here is my first screenshot. Thanks for looking. My plan is to give weekly updates.
Also, my Linkedin if anyone is wondering. https://www.linkedin.com/in/pawlowskiadam