Hate to say it, but the Unreal Engine is far from beginner friendly for the most part. There are plenty of other better suited engines to the task, especially for 2d. If you feel capable of it, go for it, but you have to be able to learn off of documentation and tutorials unless you have the funds(or a friend) to hold your hand through it.
kburkhart84Member Since 30 Jun 2004
Offline Last Active Yesterday, 11:00 PM
- Group Members
- Active Posts 1,302
- Profile Views 5,774
- Submitted Links 0
- Member Title Member
- Age Age Unknown
- Birthday Birthday Unknown
Posted by kburkhart84 on 11 December 2014 - 11:03 PM
Box2d is probably the "standard" of 2d physics engines. It is at the least from what I've seen the widest used, unless you count using a 3d engine(with 3d physics) limited to 2d plane kind of thing. Unity's 2d uses box2d, as goes GameMaker Studio, and Construct 2 as well if I'm not mistaken. Therefore, if your game needs a physics engine, it is probably a pretty good choice. But, as mentioned above, some games don't need physics, and others that could use them are still probably better without, so take that into consideration.
Posted by kburkhart84 on 07 December 2014 - 07:47 PM
Maybe I'm crazy, but I HAVE to have the dedicated numpad myself. It is not only more convenient in general, but I use Blender a lot and several of the keyboard shortcuts use the numpad.
Posted by kburkhart84 on 02 December 2014 - 11:34 AM
I'm not good at pixelling or other 2d art myself, but here is some advice.
Remember that except for real life, anything digital that you see is already frame by frame, including movies, 3d games, etc... Of course the actual framerate varies, but the same rule applies. So, take a look at something similar to what you want. If you are interested in low-rez pixel art, take a look at similar games like old mario, zelda, final fantasy, etc... You could go even older to Atari style but there isn't any shading in those sprites really due to hardware limitations. But NES, SNES, Commodore 64, among others are great examples as they started having shading by then. The same rules apply if you want to do different styles, including higher resolution pixel art, brush art(or whatever you call it), vector art, whatever.
So, remembering the rule above about things working frame by frame, note that your eyes work out the in-betweens most of the time as long as you have enough frames. Pixel art generally got away with only 4 - 8 frames for a walk cycle, and it was enough, and did not look bad. Higher resolution art requires more frames for things though, as there is simply more information for the eyes to process and it gets jerky to the viewer without more frames.
So, just draw the frames and adjust the lighting to be from the same direction. Our eyes will work it out, especially if it is low-rez pixel art. Just remember in general what is light and what is dark. If my character is a kangaroo, and my lighting is from the upper right, the stomach of the kangaroo will by light nuetral to dark, as it is facing away from the light but isn't exactly in shadow either. But if I have an animation where he/she leans back on the tail(to kick the feet up), then that same stomach area will now be facing the light and need to be brighter shade of the same color in the palette, while the head will be more in shadow depending on how far back the head goes.
Though I mostly talk about pixel art, the above applies to all types of art, even 3d though it is usually automatic from lighting in the engine. If you do vector art, you will have shapes and gradients for lighting(depending on the style you choose), so you would possible move those around some too, unless you want the lighting to not adjust on your objects as animation happens. Some games do that, but I don't like it that much.
Posted by kburkhart84 on 29 November 2014 - 03:34 PM
I can say there is good reason to go the 3d pre-rendered to 2d sprite pipeline.
For one thing, most can agree on this, 2d games are simply more simple to make, and quicker. Much of this is tied to the art and so by doing this pipeline that advantage is negated, but other things are still gained by doing 2d. Some great game engines are geared to 2d, including for example GMStudio(by yoyogames) and Contruct 2(by Scirra). These are great engines, and tend to be quick to develop in, so you get some advantage in going 2d not only in game complexity(though 2d can have many complexities regardless) but in development time due to engine choice.
Another advantage lies in that if you simply haven't/can't learn to pixel art, and don't have the funds(or friends) to outsource your art, then 3d may be the way to go, at least pre-rendering it. I fit this case perfectly, because somehow though I've never gotten good at pixel art or even vector art, I can somehow make pretty respectable 3d models.
Another advantage lies in styling. At least for me, it is pretty easy to use the same style for all the art in pre-rendered 3d pipelines. This is because you can easily create materials that are similar, you can use the same or similar textures(if you use textures), and you can easily ensure the lighting is the same by using the same scene setup and just moving objects in and out as you need to keep everything the same.
If you get pretty good at using this art pipeline, you will find it has other general advantages. For example, once you get going, changes are much easier. You don't have to redraw all the animation yourself if you simply tweak a material or change something basic. There are exceptions to this, but for the most part things can be redone easily, including animation and material tweaks, all the way to lighting setups, for example either to change or because you want more than one in order to use different graphics in different scenes or something. Also, you can reuse some assets for different things, for example if you need a face closeup for RPG style menus or dialog boxes, or for rendering actual video scenes for the game, or lastly for other pre-rendered scenery, like if your main menu displays the character attacking an enemy or something(either video or a static image).
The last thing I will mention here....if you get good at this 3d to 2d pipeline, you have a head start for the future for example if you want to go full 3d. You've already learned much about modelling and animation and probably gotton some practice. The material settings won't be the same mostly because you need more detail than low resolution pre-renders, but much of the knowledge will still apply.
Posted by kburkhart84 on 23 November 2014 - 04:35 PM
Forgetting Frob's perfectly valid points about the business side of things, assuming that you are only interested in the technical...........
I'd say go with something multi-platform. For the most part, games don't need code directly coded in the native language. 2d games made in GameMaker:Studio work great on several platforms, and that engine is really good for 2d games, generally better than Unity. Unity is great though for 3d games, and tends to also work great on several platforms. The catch is really just that you have to be more careful about performance with 3d because of how easy it is to not optimize your models, etc...
Basically, even if you are only currently wanting a single platform, it is still better to use such an engine unless you want something highly specialized. These engines save so much time compared to rolling your own, and then even if you only want a single platform now, you may very well in the future examine the business and see that it could be beneficial to export to other platforms. Having used already a multi-platform engine the work is much less, and much cheaper, and much quicker. On the other hand, re-writing it is none of the above.
Posted by kburkhart84 on 15 November 2014 - 11:47 PM
It depends on how you want to make the cutscene or video. Some games animate it by scripting actual in game things, whether 3d models or 2d sprites. Others actually create video via 3d rendering. Others make a simple storyboard and simply display those images in order.
Music would have to be made outside of Unity. Not many game engines actually make the music/sounds for you, though most of them import different music files for playing during your game. Unity and GMStudio do this.
Why don't you just pick something, and just make something simple. If you want a quick start, I'd recommend GMStudio's free version. GMStudio comes with a sprite editor so you can make some simple programmer art for your first game. And for easy sound effects, get sfxr, or bfxr, and go to town. Just do something simple, like pong, tic-tac-toe, just something to get your feet wet. You won't need anything complicated like cutscenes or video for these.
If you want to get started with Unity, that's fine too, but the catch is just that it will be a bit harder to pick up, at least for most people.
Posted by kburkhart84 on 15 November 2014 - 01:21 PM
I'm sure Unity can make such an RPG. I looked at the trailer and don't see anything too far out of the ordinary. Now that doesn't mean it won't take some work. You would have to learn the programming for it, and the art, etc...
Unity doesn't directly support C++, rather C# is the most commonly used language with Unity, though they offer Unityscript and Boo as well. If you are interested in using Unity, I'd recommend it. But, GameMaker: Studio also has a free version. I think it too could handle most of what Child of Light does. It isn't as advanced as Unity, but it is much easier to learn. You can use a drag & drop interface for some of the scripting, but I'd say you are better off learning GML, which is a C-like language GameMaker uses for scripting. There are some things that GameMaker can't do, and if you want to deploy to mobile platforms you will have to pay for those versions. Unity on the other hand, in the free version can export to iOS and Android. The catch is that the exports are limited in some ways though not as much as people think. The other catch is that like I say, Unity is harder in general to learn than GMStudio is, and that includes the scripting language.
In the long term, Unity may be better for you to learn. It isn't meant for 2d games exclusively, and GMStudio is generally better at 2d games than Unity. There are some things Unity can do with 2d that GMStudio can't, especially things that involve breaking into 3d for effects, etc... But, GMStudio at the moment is basically crap if you want 3d. It can do some things, and shaders can be created and used for things as well. But, there is no 3d editor, and the only 3d support is from addons/extensions from the computer for the most part. So basically, if you are interested in 3d games, you will be better of with Unity in the long run, assuming you only want to take the time to learn one tool that can do both things instead of the overall best tool for the job.
Posted by kburkhart84 on 04 November 2014 - 07:27 PM
Well, I believe that Anim8tor would do the job, but like the above post says, the workflow will still have to be learned, regardless of the tool.
Posted by kburkhart84 on 02 November 2014 - 10:12 AM
jbadams hit it right.
Depending on the game and style, you may be just fine buying the art, if it fits your game or you know enough to modify it.
But this may not be the case, or you may not have a budget beyond $0. In these cases, you have to take the time to learn, or find a way to make it work by designing your game around it. Many people have taken to learning pixel art. The pipelines for it are very advanced, and there are plenty of tutorials for it. You can get many styles from it too. It is(at least in theory) easier to learn than a more HD style, or using 3d. But the thing people don't get is that it is still hard to make GOOD pixel art.
Another "easy" way is to use vector graphics. Usually there are less color limitations than a pixel style so you may want to still use a sort of palette to keep your game consistent, but it can be easier to modify shapes, etc... than pixel by pixel for some people.
Last thing, which for me is somehow simply easier than 2d is 3d. I don't know why, but for me it is simply easier and less time consuming to create some simple 3d models in Blender, and pre-render animations to sprites. It isn't that I get good pixel art that way, rather the result is simply better than my pixel art results, and takes less time, and more so when you have to make changes.
I should mention though, there are plenty of discussions about the 3d pre-render bit all over, with mixed opinions on cost, time, etc... And for most people it takes more time to get up and started with that method too.
One thing though, there are tutorials around, including an article somewhere on this very site, that talk art "art for programmers." They are great to at least get something started with.
Posted by kburkhart84 on 27 October 2014 - 08:05 AM
Not bad, congratulations!
I suggest you aim for a little more shadow on the bottom, and highlight on the top.
Add a little blue to your ambient, and a little yellow to your directional light, and have it shining down (from the top) a little bit more. Also, curve in (lower depth) the dirt along the bottom and edges a bit more. You'll get a much better 3d effect with that.
Also, you might look into voronoi and other procedural functions to give things a craggy, rocky appearance.
You'll pretty quickly be able to compete with a professional 2d artist for quality with a few tricks.
That's why I'm trying to do it via 3d renders. My 3d is better than my 2d. Thanks for the tips!
In that render, I actually don't have any ambient at all, rather only a single directional light at a slight angle. For something in a final product, I would indeed do something much better, in both lighting and texture. The part that makes my method slightly more difficult is that I can no longer directly use Blender's procedural textures, because though they repeat seamlessly, they aren't seamless using a UV map, so I will have to create the procedural textures outside of Blender(or bake Blender's textures and make them seamless externally).
Posted by kburkhart84 on 26 October 2014 - 02:34 PM
You know guys, I think I have things figured out.
I'm using GMStudio, and frankly the 3d support in it is crap. I've dabbled with Unity as well but for some reason I really like 2d games and gameplay, even with 3dish graphics.
The best thing I've figured out(and somehow had forgotten since I learned it in the past) is that you can have UVs outside of the map. So, for example, I can make a block, have the UVs fill the map(0,0 to 1,1) and then extrude the block out on each edge. Then the extruded faces on the left of the block would have the UVs on the edge and to the left, making it match up perfect as long as the texture is seamless. Using the same UVs, I can also apply displacement and/or normal maps to it to get some more texture if I want. Though it will take a bit more work, it will still be much less than me trying to learn to pixel things out. And though I'm not an expert, I can get much more acceptable work via 3d than pixel art(or 2d drawing). Also, I can then draw(via vertex colors or a secondary uv map) something on top of certain parts of the model as well as long as I don't hit where the edges are.
The thing I didn't know and had to learn is that Blender's internal renderer's procedural textures do not create seamless textures via UV map. They are generally seamless, but you can't use them as such when mapping via UVs for whatever reason. So, if I want something seamless and procedural, I would have to create it in some external program or find it, which isn't too difficult.
I should mention I wasn't intending on painting after render, rather directly on the model or using textures as part of the render. If I could paint the kind of quality I need to make that work, I likely wouldn't need the 3d pre-render in the first place.
It had also occurred to me to just render the things out as building blocks, but I think it might be easier to do it using pseudo-tiles instead. The reason I don't like the building blocks version is that I would have to render out all the different platform sizes I need. I'm not thinking of making games for HTML5 or mobile where the actual size of assets matters more, but I'd like to keep my options open too, even if I don't utilize them at the moment.
On the other hand, in some cases, I see how it could actually be a pretty good idea if I'm not doing anything but PC to just render out whole levels, and just cut them up for rendering with masks(or overlaid collision objects or physics fixtures, whatever).
Just FYI, I haven't actually started to design a certain game, rather I'm considering a way to get a nice graphics pipeling going that could fit more than just a single game(though not really all of them), and that is something I can actually do on my own.
In any case, thanks for the insight. Using the "UV method" I talk about above, I was able to get this simple thing.
The middle section is perfectly seamless with itself and the base geometry is actually flat. You can see the bumps with are from displacing using the same "cliff" texture from CGtextures. So I could create platforms of any length with this method. Of course, I wouldn't use this one as is, rather assuming I used the texture as it is, I would do something better for the edges as far as modelling. This was just something I did in order to make the edges different from that flat middle.
Posted by kburkhart84 on 25 October 2014 - 04:16 PM
Hey guys. Thanks in advance for any help and advice. I'm in a different situation than many people. I like 2d graphics, and 3d graphics, depending on the game and situation. But me personally, I'm not much of an artist, 2d or 3d. Somehow though, my simplistic 3d models(as rendered low-res for 2d games) end up more acceptable than my wannabe pixel art or other 2d art forms(vectors, simply drawing, whatever). Now, as far as making tiles for games, I'm not as bad, but when it comes to animating and drawing characters, that is another story. So, I'd like to find a way to make it work and have a nice cohesive style.
If I prerender graphics using a toon shader and either outline or not, I get one(or one of a group of) style/styles. But if I draw tiles using 2d(via pixel art methods or vectors or simply drawing in digital form), I get a different style. Are there any tricks to make these work together somehow?
Or...how possible is it to try creating 3d models for tile creation instead? I know for isometric projection it would work fine generally, but even then, what methods are possible for example to make two separate models(for different tiles) mesh properly together. If I were to do it pixel art form, I could create a base tile for grass, create some variations from it, and then combine it with say a sand tile with different corners as needed. The easy way to do this for me is using Cosmigo Pro Motion since it can easily let you draw seamless tiles by repeating them while drawing, and then allows you to draw via a sort of "tiling engine" in order to blend different tiles/corners/etc... But if I make tiles this way, it gets the problem I mention in the first paragraph.
If I render "3d tiles" I can't figure out how to make them blend together. If I use a seamless texture I can get a quad(or even bumpy terrain kind of thing) to be seamless when rendering if I'm careful, but how could I get for example grass to mix with sand? The only way I can think is to create a separate model of sorts and doctor it up, but that is much less intuitive than doing it with 2d.
The other thing for example, is if I want to create tiles for a side-scroller/platformer. If I want a grass platform(3d rendered for 2d), I need at minimum a middle and one endpiece(or two so I don't have to mirror). It is easy enough to create a single model 3x1 tile units in size for a render. But if I wanted to use it as a tileset, how would I then get the middle part to be seamless with itself? Maybe I'm wrong, but I would think there is some sort of trick to it. This also applies for example if I wanted to make a top-down game, shooter, space, whatever. How would I get for example an alien wall with endpoints and corners to be seamless between middle parts?
If someone wants examples of what I'm talking about, I can whip up some quick 3d renders with marking showing what I mean.
Posted by kburkhart84 on 21 October 2014 - 07:50 PM
Well, another thing to consider that you mentioned but very lightly in your post is the amount of time to learn and use the engine you choose.
The thing about UE4 is that it uses C++. This can be good and bad. It depends partially on how well you already know C++, but also in order to use it with the editor and engine, you have to learn to use all of the macros that make your classes work in the editor. This isn't the only thing, but it is a good example. The other detail about UE4 is that you can do a lot with only blueprints too, though it is another system you would have to learn. The last thing I mention about UE4 is that though it does a lot of things, and it is really a good deal for most people as far as price, it is also a beast. There is much to learn before you can really do anything well with it. Compared to something like Unity in my opinion it will take much more time to learn well, though there are likely a few that disagree with me here.
Unity....the free version is great. It doesn't have deferred rendering in the free version, but it DOES have dynamic lighting. You can also get a single light's hard shadows. You can also export to most of the platforms now with the free version, though the PRO version has some enhancements to make things better. As far as licensing, Unity says the free version is almost unlimited in usage. You are missing some features, but most single devs won't need many of those features anyway. But with the free version you can release your game commercially with no issues(except you have to display the splash screen which wouldn't bother me). The only catch is that if you earn over $100,000, you have to purchase the PRO version, which with that kind of earnings I don't see it being a problem. Also, there is little change to make to your actual game if you want to upgrade to PRO in the middle of the project.
Blender's game engine...I wouldn't touch it. Blender is great for other things, modelling, rendering, etc... but not for a game engine. It isn't great for performance either, and likely never will be. That isn't Python's fault though, rather just that it isn't optimized well, and the devs aren't trying to do so either. Also, the thing about the licensing is that currently, the blender player(the runner of your game) is under the same license as Blender. Your assets aren't though. So if you release your game with the blender stuff mixed in with the executable(in order to hide it) you would have to release the source, which is likely not what you want. A way around it is to keep your assets and everything separate from the Blender player. This leads to having your stuff slightly more exposed. The Blender player would then load your separate blend files. As far as I know though, there isn't really another option, and I don't think they have come up with a way to make those blend files some other format that is not so open and easy to get to.
Last thing to talk about....as mentioned above, the UE4 can be gotten for a single month of $20, and then you can cancel, redoing it later if something gets updated that you really want/need. So, if you can deal with the bigger learning curve and really want or need the features of UE4, then that would be a better deal. But, if the learning curve is going to be too much, you are better off with free Unity, though you won't have the high end features of UE4. In the end, part of the decision has to be about how quick you can learn and then get things done. If I were to choose right now, I would use free Unity, because though I know C++, the whole system with the macros, plus the editor tools etc... is just too much to learn with UE4, and I could simply get much more done much quicker with Unity. Plus, I can release my game with no royalties or anything owed to Unity.
Posted by kburkhart84 on 21 October 2014 - 07:29 PM
I too would most likely display the bar(percentage) and the numbers(50/100) as well. You mention the part about it making sense during combat to show numbers as well, so it is pretty much decided. The only reason I might not do the numbers is if your game really doesn't use them, rather percentages. Example,I've seen in at least one game(Legend of Dragoon) many things are percentage based. If you use the defend command, you gain 10% of your health. Some games also base damages from certain special attacks, and the also some recovery items recover based on percentages. If your game was like this to an extreme, then maybe you could simply have "levels" of hp and constantly show percentages. But I don't think that is the case in this game.