Game development
-
I'm really interested in developing a game. I want it to be like age of empires style. looking like 3D But actually 2D but just not a birds eye view (more 3d looking) I would like to use Unity engine But have no skills in game design besides the concept of the game in my head. I would like to start with a game map and have a view port so as to be able to see only a portion of the map which scrolls as player moves left/right. Once I get to that stage then I would like to add the sprites. How do I go about creating map in Unity? I would ideally like to take a country map and have it 3 dimensions x,y and z but only z where there hills/mountains like The Alps in Switzerland for example Please can any members advise me the best route to take. My programming is okay, but about graphics and game dev I know nothing but am willing to learn each step as it comes along. I read some of the articles on the site and they kind of blew me away. But I'm sure if I go one step at a time then I can do it. So how do I go about creating a terrain map in Unity with contours? Thank You
Quote:
So how do I go about creating a terrain map in Unity with contours?
I use the terrain.party website to create height maps of real world locations. Once the height maps are downloaded, you'll need to use Photoshop or Gimp or similar to convert them to .raw format, so that Unity can read them. Once you have the height map in .raw format, you can create a terrain object in Unity and apply the height map to displace the geometry. I'll leave it to you to play with the settings etc. to get the effect you are looking for, but this should get you started...
-
Zaf Khan wrote:
But have no skills in game design besides the concept of the game in my head.
One simple rule: It must be fun. Avoid everything that is overly complicated or repetitive, You must find the optimal spot between boredom and stress. And forget the word 'realistic'. You can make your own little reality and can make the rules as you please.
Zaf Khan wrote:
I would like to use Unity engine
You are starting at the wrong end. If you try to do everything at one, the whole thing will descend into chaos. How about taking a tip from web development and use a three tier approach? - The 'lowest' tier is a data layer. It must not be built with or around a database, but it can be. The are many more options, like storing your data (like your map) in binary files, XML, punched paper tape, floppy disks or anything else that suits your needs. All this layer does is to store data (like for example a tile of your map) or find it for you when you ask for it. - The middle tier is the game logic. Here is where the games rules are implemented. It uses the functions of the lower tier to fetch and store the data it needs. - The uppermost tier is the presentation layer. It does nothing more (huge understatement!) Than take the player's inputs, call functions of the middle tier to process them and then 'present' the returned results to the player. Here you must do all the drawing and again you are totally free to use anything at your disposal, from simple console output to huge rendering engines like Unity. Build the simplest presentation layer you can at first. Console I/O is really easy, but limited and ugly. This way you can concentrate on the lower tiers, build and test them without getting bogged down with how to draw this or that. Once you have a working game, you can still write a new presentation layer with any fancy graphics you like and concentrate on doing that and nothing else.
Zaf Khan wrote:
My programming is okay
Self praise stinks. :-) You will quickly find that you have chewed off too much. That's okay as long as you can work at one problem at a time and don't try to do everything at once. Use that three tier approach to keep your problems separated and try to keep the scope of your game small until you know that you can handle it. Better a small finished game than an eternal construction site. How I know that? I started
@ Code Wraith Hiya and Thank you for all the advice. I'm currently working on my data layer and building the map, it's far from finished and I do not intend to start coding straight away. I will worry about coding when I get to it, but have taken the step of investing in a few decent books. Cost me a pretty packet but what the hell, it's only money and you cannot take it with you lol...
-
While I agree to 99% with CodeWraith, by - First, create your data base (not database, I mean the base for all your data :-)), i.e. data layer - Create a Business Layer, keep it as abstract as possible, and always keep performance in mind, so do not overengineer things. - Maintainability of software is extremely important, but consider the drawbacks of DIP, IoC and the like, as reflection and dynamic type resolve are VERY expensive operations when it comes down to microseconds when developing a game. - Keep those at a minimum necessary for your code to be maintainable, but don't create the holy formula for peace on earth. Besides all of that, I would like to add one single thing: It is not ultimately true, that you can create those layers "at will". You need to make one important decision: - The technology where this all will end Means: If you plan to go the Unity path, C# is fine. If you use other platform independant Engines, like libGdx (for Java), DeFold (based on lua language), you might find out, that your layers will not work, as libGdx and DeFold simply don't know about C#. So, before writing a single line of code, make sure, that you will be able to use your lower layers in the engine where the presentation will take place.
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
@ Mike Barhold Hiya and Thank you for your advice too. Especially everything you wrote in the first paragraph. Yes I had figured on using C#, although I have not programmed in C# before, I see no problem in learning it. I do not learn well from video's. I learn better from traditional text books.
-
Maybe given all the useful comments posted so far and your clear goal, it might be worth writing a series of articles on codeproject as you learn and progress in your game development.
“That which can be asserted without evidence, can be dismissed without evidence.”
― Christopher Hitchens
-
Here you can find some tutorials: https://www.slant.co/topics/346/~best-beginner-resources-to-learn-unity[^] And an overview of game engines: https://www.slant.co/topics/991/~best-game-engines[^]
-
Some of the posts to this thread are treating game dev as a typical 3 tier app, and it is not always that straightforward. Go to youtube and type in unity tutorials maps and you should get some hits there and keep going from there. Brackeys - YouTube[^] How to make a Video Game in Unity - BASICS (E01) - YouTube[^] I have done some game dev in unity and it is fun, just don't have the time to pursue that right now. There are also, some unity articles here on the this site you can search for. UNITY 3D - Game Programming Introduction[^] Day 16: Using A Real Gun Model In Unity[^] If you are going to persist data to a db for your game there are tutorials for that too. Creating an Item Database for an Inventory System in Unity - YouTube[^] Saving Data in Unity: ScriptableObjects - YouTube[^]
-
@ Slacker007 Thank you for the links to resources on this site. The one titled "UNITY 3D - Game Programming Introduction..." looks superb so I will take a look at that one tonight or later. Thanks again.
Glad to hear. the Brackeys link has some great tutorials on creating game maps in Unity, etc.
-
Glad to hear. the Brackeys link has some great tutorials on creating game maps in Unity, etc.
-
Learn to Create Games – Create your own games easily and learn to code in the process[^] I've bought a few of his books. I think they are pretty good.
Social Media - A platform that makes it easier for the crazies to find each other. Everyone is born right handed. Only the strongest overcome it. Fight for left-handed rights and hand equality.
@ Zurod Dev Thank you for the links to his books. I did see his books advertised when I did my research for the books to buy. I had thought to myself I would to buy them, Maybe one or two from his "Unity from Zero To Proficiency" range but not right now since I spent a lot on the books I bought. So maybe after a few months I will try to buy them and maybe. The books I bought for now are: Sams Teach Yourself - Unity Game Development in 24 Hrs - Mike Greig Game Development With Unity - Michelle Menard C# Game Programming Cookbook - for Unity 3D - Jeff Murray More Effective C# - 50 Specific Ways To Improve Your C# - Bill Wagner Essential c# - Mark Michaelis & Eric Lippert The first book I bought will be the last one to arrive Introduction to Game Design, Prototyping and Development - C# Unity- Jeremy Gibson Books
-
Quote:
So how do I go about creating a terrain map in Unity with contours?
I use the terrain.party website to create height maps of real world locations. Once the height maps are downloaded, you'll need to use Photoshop or Gimp or similar to convert them to .raw format, so that Unity can read them. Once you have the height map in .raw format, you can create a terrain object in Unity and apply the height map to displace the geometry. I'll leave it to you to play with the settings etc. to get the effect you are looking for, but this should get you started...
@ Twan Gabhala Thank You for your help too. Yes I came across terrain Party website and tried it out. It only allowed a maximum coverage of 60KM Sq So I skipped that and created my own map in paint shop pro 5 Its a very old software (1995) but supports RAW format image editing/saving. I create a 256 color bitmap (png/gif), then convert it greyscale then export as RAW. I used it to make a simple map (one I could learn lessons from) in unity, before making the final map. It all helped me understand the scaling of Z (vertical axis) to the game world.