Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 30 Jun 2004
Offline Last Active Yesterday, 05:27 PM

#5284805 Allegorithmic Substance for Non-Artist, Tools for Amping up Graphics?

Posted by kburkhart84 on 02 April 2016 - 06:01 PM

Unity has a Substance engine I believe to be comparable to UE4's.  If the Substance has exposed parameters you can change them, and if the material is being used as a Substance(not as baked textures from the substance, as not all platforms are supporting it yet), you can change those parameters at run-time.


I'm no artist, but I can tell you, these softwares, if you learn at the least some basics, can help you make better graphics, especially combined with pre-made textures(like GameTextures.com textures).  I don't think it will help with "hand-made" textures like some cartoon styles because those require actual art skill generally, while using pre-made textures and Substance Painter you can take a UV, mask off the UVs, and apply materials that can look good if done right.  But this is more skill with software, not so much with actual art.  It is like making textures/graphics relying primarily on Photoshop filters instead of actually drawing things with the brushes.  It CAN work though in my opinion.


About Substance Designer, I think it is also a worthy investment.  In theory it allows you to not be an artist and via the node system still create good textures.  I haven't done much with it, but given time I've been able to make a couple things that I wanted to.


I honestly believe the LIVE Subscription is perfect for me.  The $20 per month isn't much for me, a working adult with 3 children and a wife.  But I had a bit of a head start, having learned basics of modelling with Blender3d, and knowing basics of UV mapping, etc... despite not having actual artist skill.

#5281072 picture to texture workflow (especially to height map) ?

Posted by kburkhart84 on 13 March 2016 - 12:47 PM

There is another post here talking about exactly that.  The artist is taking the picture, and actually modelling the details.  He then creates the height, normal, AO, by baking that model.  There is some more post-processing as well, making the height and normal maps more noisy/detailed.


There are programs that can do the job automatically.  It appears that you are already using one for the normals.  You could easily convert that normal map into heights I'm sure, though it wouldn't be as good as modelling the stuff.  I think Crazy Bump does it, and I'm sure Bitmap2Material from Allegorithmic could do it as well.

#5280613 Cheating with graphics

Posted by kburkhart84 on 10 March 2016 - 05:44 PM

You have hit on some little "cheats" that can work.  The main thing with cheats like this is find a style that you can do, and stick with it.  If creating objects out of geometric shapes works, maybe it can be a solid style for you and a game.  You can then vary that up possible for a different style, say by using those filters, gradients, etc...  In fact, maybe you could learn to create graphics with a vector program(Illustrator, or the free Inkscape).


The way I used to "cheat" for 2d graphics was by creating them as 3d models and pre-rendering them.  For whatever reason, 3d was much more intuitive form me, maybe because I'm just creating geometry instead of worrying about lighting/shading.  And though this method takes more learning time, and more time for the initial model creation, once you pass that stage, things suddenly get much easier.  Need animation?  Just do it with that model.  Need to change something, do it and re-render any animations you have, no need to redraw a bunch of stuff.  Need a bigger/smaller size version, just re-render.  The same thing applies if you want to change the lighting direction.  There are considerations to take with this.  For example, the size can't really be 16x16, with 32x32 being pretty much the bare minimum for most things, and really not that great, more like 64x64 being a pretty good starting size.  You also have to consider how you shouldn't model details that wouldn't show up in the final render, but remember to include some things that might show up if you increase size so you already have it in case.  It's a balancing act.

#5273378 Structuring a Simple 2D Engine

Posted by kburkhart84 on 30 January 2016 - 12:34 PM

One thing about game engines, as mentioned above, is how some code ends up being the game, while other code is in the game engine.  But at some point, the better game engines have code that would be better in specific games, but can be used in some games, so becomes a feature.  These are things like path-finding, AI, and any number of similar ilk of features.


Once you are past the basics, the things that pretty much every game will have, you would then move on to making features like I describe above.  Sometimes, this comes on because you know of a certain feature, or because you try making a game with it, and then after coding that game, extract that code, and make it work in a general sense with your engine.  Either way can work, though if you do it the second way, making a game, then I recommend you remember the eventual goal of the engine, and therefore should remember to write things in somewhat general ways when possible.  It will make things take a bit longer, but will be quicker at the point of integrating the thing into your actual engine.


So, you have two paths you can generally follow, though you can go back and forth no problems.  You start making some simple games, and then you start extracting game code from them so you can then put the features into your game.  Or you can make a feature list of things you know games have that would work in your engine.  This list would include things like navigation, AI, particle systems, lighting systems, maybe custom shaders, you know, all those things that make games great.  Then you can simply make some test cases in order to make sure your engine features are working in a good general way, and that you can use/not use the features as you wish for any given game, and ensure that nothing interferes with other systems in the engine, regardless of which all features are actually in use at the moment.  Everything should work in concert with each everything else, in any usage combination, under any given circumstances.  That last part is generally the hardest part of making generic game engines, much more than any single given feature.

#5273366 Low Poly vs. High Poly

Posted by kburkhart84 on 30 January 2016 - 11:04 AM

In some cases, you can get away with simply adding something like Blender's Subsurf modifier.  It adds smooth geometry and you can control just how much of it.  You can also then apply it and then modify it as you need to.  Note that this is similar to what would happen if you put it into ZBrush as suggested.  Also, Max and Maya have their versions(TurboSmooth in Max I think) so it should work wherever you go.


Just note that the results will also depend on how the original model is, and just how "low-poly" it is, including just where the the geometry is on the model, as these modifiers use a form of subdivision, so if the geo on the original isn't even, it won't be on the subdivided one either without some extra work.

#5268790 Getting started with Unreal Engine or something else?

Posted by kburkhart84 on 01 January 2016 - 11:33 PM

I recommend you take a look at Unity, and at GameMaker: Studio.  Unity is generally easier to learn and use than the Unreal Engine, though the scripting is C#(and 2 other options) while Unreal Engine 4 uses C++.  GMStudio uses a propietary C-Style scripting language called GML.  It is quite easy to pick up if you have some programming background, which you do.  Unity excels at 3d, while GMStudio excels at 2d, so that may also help make a decision.

#5264154 Looking for a free 2D engine

Posted by kburkhart84 on 29 November 2015 - 04:10 PM

Well, though GameMaker isn't what you are looking for, I have to refute your mentality that it isn't "programming."  In fact, the GML language is much more than a bit of drag&drop, and isn't something you should take so lightly before getting better informed.


Unity is also something to look at, though it also isn't C++.  Also, it is somewhat like throwing a jackhammer at a small nail in that it does much more than a 2d game.  That can be a good thing though, as it is a pretty good system to get into, and would allow you to move into 3d pretty easily, using the same skillset and programming language.

#5264153 How Is This Pixel Art So Detailed?

Posted by kburkhart84 on 29 November 2015 - 04:05 PM

I don't know for sure as I didn't create those pieces.  It appears to be quite flat shaded, which leads me to believe it wasn't done with any 3d renders, except maybe as reference material to get poses right or something similar.


General pixel art is time consuming.  But I doubt that game was made with a single person, rather probably at a minimum programmer, artist, and musician, over a lengthy period of time.  Remember that it is possible to pixel out anything you want any size you want, given both the time and the skill.  Fighter game sprites used to have resolutions of over 100x100, with animations that were quite fluid, though they took much time to do and do right.


Last thing I mention about that game,  notice how much of the color is in chunks.  The environment as well as the character are made of mostly single colors for things.  There isn't much shading going on.  In that style, I would think that it wouldn't matter as much how big the pieces are because the actual work wouldn't be as much as on other styles due to using the same color in big chunks.

#5259689 In a fast action game, how to handle smooth animations?

Posted by kburkhart84 on 29 October 2015 - 11:45 PM

I'm no expert on the subject, but I'm understanding a couple certain things, which happen to apply to both 2d and 3d animations.


In general, I understand you want smooth animations.  But unless it is a really slow methodical movement platformer(which yours does not appear to be), your animation must be secondary to the actual movement.  You don't want to not be able to jump just because you are still in the middle of a walk cycle, rather you need to be instantly jumping.  If you want to have some sort of transition, fine, but you can't let it get in the way of the actual movement.  The same thing applies to the 180 turns.  I need to begin the slow down/stop process as soon as I hit the opposite direction, not waiting around extra miliseconds on an animation.  And landing on the ground is notorious for this as well, as some games make you wait until the whole "landing" animation happens before allowing you to move, which is not optimal, though if there is a valid gameplay reason I guess it makes sense, but for fast paced gameplay, always make the movement king and the animations be controlled by the movement, not the other way around.

#5258682 Structuring my Unity3d project

Posted by kburkhart84 on 23 October 2015 - 08:57 AM

You want to learn about singletons.  It is something some people claim is bad programming practice, but used properly I disagree, and this can be one of those uses.


You create that game controller as a singleton.  Make sure that it will work in any scene created at any time, as in it isn't dependent on something in the main menu, rather can load defaults for your settings, or from a file, or whatever, but it has to work anywhere, starting at any time.  If you make it a singleton, it checks if another instance of itself is in existence, and if so, deletes itself.  In this manner, you put one in each scene, including the main menu, and yes, it needs to keep the dontdestroyonload call.  So, the first one that gets instanced stays around, but you have them all over the place, so that you can test any scene you want.

#5258235 Current Opinions on good starter programs

Posted by kburkhart84 on 20 October 2015 - 09:44 PM

In my opinion Blender is still the king of the free modelling software world.  It has gotten better and better and in my opinions made itself a quite good competitor to the competing paid programs.  Others' opinions may differ, but that is how I see it.  I use Blender exclusively for my 3d modelling needs and have no need for anything else.


One thing you might want to look up is how PBR has come out, how it works, etc...  The workflow has some changes due to this if you want to use it, and though it is different, I wouldn't say it is more difficult, at least once you understand it, so it may indeed be worth it.


Other softwares have had things change, etc...  My current favorite tools for texturing are from allegorithmic.  Substance designer can work well to get many types of procedural textures, and Painter is quite the awesomeness as far texture painting goes.  If you remember DeepPaint, how you could paint spec, bump, diffuse, etc... all at once, that is how Painter is, but for the PBR workflow, and much better and more modern.  It can use textures from images, as well as from substance designer files.  I'm no artist, but I can at times get acceptable results using painter just because of how good the workflow actually is.  Gone are the days of having to paint directly on textures.  Also, they currently have this "Live" service.  You pay $19.99 a month like a subscription, but once you pay the total software price, you stop paying and then actually own the software, so it is more rent-to-own than subscription, which is about as good as it gets.

#5257105 Programmer needs squash and stretch

Posted by kburkhart84 on 13 October 2015 - 02:54 PM

Blender is indeed a somewhat steep learning curve, but it is worth it.  I use it a lot, even for 2d sprites, as you can get many styles out of renders.  I saw the previous poster mention you redrawing over rendered spheres to get the hand drawn look.  But I don't remember you mentioning anywhere that you wanted that certain look.  If that is the case, you can also make the colors/textures in Blender, even via simple vertex colors, and then render that, and you wouldn't have to re-draw much of anything.


Yes, it takes time to learn, but it is worht it in the long run.  Remember it is useful for this whole 2d pre-rendering sprites, but also for cinematics, and even 3d modelling if you want to make an actual 3d rendered game too...indeed, very much worth the knowledge.  I'm not artist myself either.  But I can get what I call "acceptable" doing things in 3d, as it is easier to wrap my head around getting the actual shapes with lighting added then trying to shade and dither in traditional or vector 2d software.  See, 3d is less "open to interpretation" in a way, in that you are working in real space.  A sphere is a sphere, and then you add lighting, texture, etc...  but as drawn in 2d, the sphere is likely now a circle(simple right) but then you have to manually shade the lighting, so you have to choose colors, go for bounce lighting if the object is on a surface, pixel out textures(not necesarily pixel by pixel depending on your style), while in 3d most of this is more automatic.  Also, with the 3d path, things take longer to get started, but are easy to modify later.  With sprites, it can often involve total redoing of the work.  Want to change lighting?  In 3d it is easy to change and re-render.  The same applies to animations, camera angle, even materials of the objects, and you can just change the one thing and leave the rest of the work done.  In 2d, it can generally(with exceptions) only be done as a whole.

#5243322 Cheap Rendering Tricks Used in Game Industry?

Posted by kburkhart84 on 28 July 2015 - 10:54 PM


Reflection probes(in both engines) let you have nice reflections at a somewhat cheap rendering cost, and work great for things like have the cars outside reflect/mirror the street lamps, but when in tunnels, reflect the tunnel lighting(which may be on the sides instead of the top).  I mean the actual geometry though, not just the lighting/shading part.

Your mention of reflections reminded me of screen space reflections, where the game flips and distorts parts of the scene that has already rendered and paints it onto reflective surfaces to provide the appearance of a realtime reflection that updates as objects and the environment change. The major downside to this technique, however, is that because it's re-using already drawn pixels it cannot reflect anything that isn't on the screen. So you can usually end up recognizing this technique in games where a reflection seems to "stop" right in the middle of the shiny surface and change into a more generic color or cubemap.

The major upside, of course, is it is a far cheaper effect then actually rendering the scene from the perspective of each reflecting object to generate true reflections.



Yup, I remember doing things like this.  You usually needed the stencil buffer too in order to make the reflections only draw on the reflection object instead of all over.


I remember using a quick matrix transformation plus the stencil buffer to get quick projection planar shadows.  You basically draw the object a second time, but using a specially made transform matrix.  This matrix would flatten the object onto a plane in space, from the point of projection from some light(position).  Then, as long as you used the stencil buffer, the shadow would only be on that plane.  The catch is that this trick only works well when your ground is actually a plane, as it quickly get expensive to draw the object on more than a couple of pieces of geometry to get shadows, which ends up leading to other shadow techniques.

#5243205 Cheap Rendering Tricks Used in Game Industry?

Posted by kburkhart84 on 28 July 2015 - 10:46 AM

A "modern" trick is PBR, which is currently free to use in Unity 5 and Unreal Engine 4.  I haven't used it extensively, but it looks like it is going to be a really quick way to get good results once you learn the system.  The same texture set can be used on objects, regardless of whether they are in dark or light situations, as the lighting calculation is "based on realism" as they say.  Reflection probes(in both engines) let you have nice reflections at a somewhat cheap rendering cost, and work great for things like have the cars outside reflect/mirror the street lamps, but when in tunnels, reflect the tunnel lighting(which may be on the sides instead of the top).  I mean the actual geometry though, not just the lighting/shading part.


I know this isn't the same type of trick as what started this topic.  But I find PBR to be pretty exciting.

#5239678 Best way to store a stage for a platformer?

Posted by kburkhart84 on 10 July 2015 - 10:51 PM

I think that you'll find that the difference is negligible if you're using a proper tilesheet(s) and a thoughtful rendering process. It's even conceivable that tiles will outperform.


I can't argue with that.  I would say that unless you are using some really large images or having something extreme going on, in general brute force rendering, less images is faster to draw.  So if I have a screen with a single background, it will be much quicker to draw then 24x16 tiles, in most game engines, in most situations.  This is still quite a generic statement.  And in any case, unless there is a reason not too, for example you are hand-drawing levels, or using 3d rendered screens that aren't (and can't be) tile based, you are much better off using tiles.


Tiles don't have to be 16x16 or 32x32.  You could have 128x128 if you wanted to, or about any size really.  So using tiles won't really limit what art and style you want to use.