Jump to content

  • Log In with Google      Sign In   
  • Create Account

SimonForsman

Member Since 18 Oct 2005
Online Last Active Today, 02:04 AM

#4935428 I have an idea, and that's about it. Please help

Posted by SimonForsman on 27 April 2012 - 10:59 AM

I have considered kickstarter as an option as well, but I'm not sure if that's really an option if I don't have anything but ideas on paper.


Its not, no sane person will give you money unless you're reasonably well known or can show significant progress (There are quite a few fools out there but they're not common enough to actually fund a game)


At the moment you seem really passionate about this idea. That's great! But if you don't have money, you must do everything yourself. That's just how it is.


Everything is an exaggeration i think, If he can get started he'll have a much better chance at attracting people who can help him out.


#4934832 Multi-Platform PC Development.

Posted by SimonForsman on 25 April 2012 - 12:23 PM

Also worth considering that Linux only has around a 1-2% marketshare on the desktop, and that most of those are in the CS/IT/film industries, not gaming...


Don't confuse usage share with marketshare (its a common mistake), the marketshare is higher but also irrelevant as the number of gamers using Linux exclusivly can be counted on one hand, (maybe two) (Linux gamers will buy Windows games and run them in Windows if they have to).

Many indie games that have had Linux releases get 10-20% of their revenue from Linux users (It is impossible to say how many of those buyers would have bought the Windows version if no Linux one was a available though and its quite hard to quantify the value of the almost automatic slashdotting you get by releasing a game for Linux (Which can translate into more Windows/Mac sales aswell))

Edit: As for if its worth it or not is something you have to figure out for yourself, in general it seems that low budget titles with no marketing ability has more to gain by going crossplatform than big budget titles do. (Allthough valve seems to be pushing steam and L4D onto Linux now, but i guess its more about getting Linux users to adopt steam and selling the ~40 Linux games they allready have on steam to more users (rather than having them buy from other sources) than it is about selling extra L4D copies)


#4934294 What sections of C++ do you need to know?

Posted by SimonForsman on 23 April 2012 - 07:17 PM

Okay. I had planned on at some point diving into Direct X just because of how supported it is, but if you had to choose between Direct X and OpenGL to start with, what would you choose?


These days they are similar enough that it is an irrelevant choice for learning purposes, DX might be easier to learn properly as there isn't as many bad tutorials for it as there is for OpenGL (Alot of OpenGL tutorials cover the now deprecated immediate mode and as a beginner it might be hard to find the good ones).

Personally i would choose OpenGL anyway since it is more widely supported but my need for my code to run on non Microsoft platforms is fairly irrelevant for you. (If you do decide to learn OpenGL first then i strongly suggest that you ask for tutorial and/or book recommendations in the OpenGL section of the gamedev forums)

There are 2 things you need to be aware of when choosing a 3D graphics API:

1) DirectX is only for Windows. (OpenGL works on Windows, Mac, Linux, BSD, Solaris and a bunch of other systems. OpenGL:ES(Which is very similar) works on iOS and Android and many smaller mobile and embedded platforms)
2) Intels OpenGL drivers are worse than their D3D drivers. (You might only get OpenGL 2.x support on a Intel GPU that supports D3D10 for example).

That said: Don't jump into a low level 3D API yet, start with something like SFML.


#4934197 What sections of C++ do you need to know?

Posted by SimonForsman on 23 April 2012 - 12:52 PM



That depends on the game, and it depends a lot on your personal coding style. You can write a complete game in conformant C++ without using a single structure or class. That may not be the cleanest way to write it, but it can be done.

My personal recommendation is to not worry about pre-learning concepts in programming. Go write a bunch of programs (games even) and when you find something that seems awkward or difficult, see if there's a tool or technique that can make it easier. Generally there will be.


My first graphical game: a 2D shooter written in Pascal used only goto, global variables and the borland graphics functions (everything was made by filled rectangles or lines) so it is definitly possible to write a game with little to no knowledge of the language you use or even programming in general. (As long as you are persistent), Ofcourse i only managed to make 3 levels (hardcoded as i really didn't understand file I/O) before things got unmanagable but it was a game, i made it and at the time i was insanely proud of it.

That's really impressive i think. I was just worried I would get to far in and I wouldn't be sure how to advance forward whether graphically or just base programming wise. But if you were able to do that with only a few things that i'm not really worried. Posted Image


Just start small and you'll be fine (Pong is a great starting place), These days getting help is easier than ever aswell so don't be afraid to ask for help if you get stuck.



After I've done lots of learning and periodically quitting, I've stumbled upon direct X and I was disappointed that not
even half of what I've learned was needed. What I really should have studied instead of console programming is
windows API.

But then again, lots of mistakes done and fixed, experience gained and style developed. It was "kind of" worth it.

Is windows API really that important?

No its not, it used to be when it was the only way to develop Windows applications but these days there are good cross platfrom wrapper libraries that take away most of the pain of dealing with the operating system directly.

I'd recommend avoiding the Windows API until you run into a situation where you have to use it. (For DirectX you probably have to use the Windows API to create a window and handle events but thats all and a decent tutorial will cover that for you) (If you go with OpenGL or a 2D graphics library you can avoid the Windows API entierly)

The Windows API is old, clunky and downright awful just like the X11 API for *nix and both of them have more or less been replaced by more modern APIs like .Net, Cocoa, QT, GTK, etc.


#4933943 SDL selection based on color

Posted by SimonForsman on 22 April 2012 - 09:52 PM

Hello GameDever!

I am trying to create a game, in which you play a country with a number of provinces, but for this game to work, I need to have a way to select these provinces. I thought of making every province easy to identify by using unique colors (from a devers point of view), but of course, I do only want to use these colors internally, and they shouldn't be rendered.

I thought of checking the pixel you are currently clicking on, and looking for the province with the color of the pixel in a table, containing pointers to all of the provinces. This seems fairly straight forward, but how do I get the unique color of the province, when I am rendering it with a different color?

This problem will be easier to understand for people who have played some of Paradox Interactives games before, because they also use a similar layout (I think).

Also, I will be using SDL for this.

Oliver


Create a second (software) surface (hardware surfaces are slow to read from) with the colorkeyed version of the map and read the colors from that surface (don't render it).

You can probably use a lower resolution for this map aswell to save memory (just remember to properly scale down the mouse position aswell before reading the keyed map though)

Edit:
Here is a link with info on how to access surface pixels with SDL: http://www.libsdl.or...gi/Pixel_Access


#4933645 Is an engine necessary for 3D games?

Posted by SimonForsman on 21 April 2012 - 05:54 PM

No you don't have to use a third party engine, (You can make your own or just hack something together without even worrying about the engine abstraction).

Using one does however save alot of time, (Creating a prototype in Unity3D can be done in a few hours for example) and if your goal is to make a game then using a third party engine is a really good idea. (If your goal is to learn lower level programming then using an engine won't help you, if you want to learn engine design then it doesn't hurt to atleast look at a few different engines to get some ideas)


#4933604 How do you create terraforming in games?

Posted by SimonForsman on 21 April 2012 - 02:51 PM


You could use a heightmap for the terrain, (it is quite easy to raise/lower the ground then) (allthough if you want to dig tunnels its not really working)


I'll look into heightmaps but yeah... I think digging tunnels is important.

Is it possible to create new vertices in a mesh? I mean when the player is playing the game. And then alter the vertices.


Yes it is possible.


#4933598 How do you create terraforming in games?

Posted by SimonForsman on 21 April 2012 - 02:36 PM

You could use a heightmap for the terrain, (it is quite easy to raise/lower the ground then) (allthough if you want to dig tunnels its not really working)

Edit: You could also use medium sized cubes/voxels for the internal representation but render a smoothed version of the terrain instead (using for example metaballs) (This would work for tunnels but requires quite a bit more horsepower to render, with decent culling it should be a viable option though)


#4933580 Can I use native code in developing for android?

Posted by SimonForsman on 21 April 2012 - 01:44 PM


Ive written a few little apps for android, but now I know that java is definitely not for me. I know that the best selling apps are usually 2D and all that, but Im mostly intrested in 3D or 2D physics, ...and to write that in java would be horror(for me at least).

Why? Because you don't like Java? As a programmer you should write for the best tool for the job; databases mean SQL, build scripts mean python and perl, and Android programming means Java.

I know there are tools for including native parts in the java code, but I dont know anything else about them. Is it hard to implement such tools or APIs? Do they produce more overhead than the speed I gain by writing in CPP? What parts of the application can I write in native?
Thanks very much!

Java is JIT compiled to take best advantage of the hardware running it. It has been shown by quite a few major studies that Java is either on-par with C++ or better performing than C++. The only very rare exception is when you need to take advantage of some hardware-specific benefit that has no bytecode equivalent and the JIT compiler just cannot access. But Android doesn't have that problem since all the hardware out there runs java-accelerated chipsets.

Every device I'm aware of has chips that run Java bytecode directly. That means Java *IS* native code.

You can write whatever you want in whatever language you can find Android compilers for. There are quite a few languages to chose from. But don't expect to get better performance since Java *IS* the hardware native instruction set.


While Java performance on android is pretty rock solid its not necessarily native (as android runs on standard x86 hardware aswell), the JIT compiler however does make that distinction pretty irrelevant and Google does recommend against using the native SDK for performance reasons (usually it results in a slowdown due to JNI overhead unless you write very large chunks as native code).

There is however a few very good reason to use C++ for Android apps and those are:
iOS portability (iOS doesn't run Java bytecode) (Allthough using something like Unity is a better option for this)
Memory limitations on older Android devices, (Older android versions have a 16MB per process limit for the managed heap) (Allthough since memory used by the GPU isn't counted towards that limit its rarely an issue for games and devices running those old android versions usually don't have all that much ram to play with anyway)


#4933564 Is it hard to sell games to another studio?

Posted by SimonForsman on 21 April 2012 - 12:39 PM

Being rich is a different number for all people.
and so is quickly.

Making 100 grand after a years work on a game is very very possible.
Then ofcourse you have to split the money with the team.. which is why It's best to have 1 or 2 persons in the team and outsource as much as you can.
But if you designed the game good then you can continue making more money after the 100 grand the first year... and continuing to make money is much easier than starting to make money.

And I said within 1-3 years and I also said rich with " around the word.


wait what ? split money with the team ? (Thats not a serious way to run a business)

If you intend to run a business you pay your staff a salary. (You will not find anyone with the relevant skills who is willing to work without direct compensation, making a successful product with the help of amateurs is not a viable business strategy). (Where i live that means around $5000 per month for each worker in salaries and social security fees if they are fresh graduates, more if they have experience).

There are basically 2 viable ways to run a game business:
1) Do it yourself and outsource the things you can't do (This has to be kept to a minimum and thus you'll have to work very very hard, you also need enough money to live on while you do this (unless you work another job on the side)
2) Pay your staff. (This takes alot of money).

Revenue share schemes are suitable for hobbyists who don't expect to make any real profit from the game but still want to put their game on for example a web portal that shares ad revenue, Its not suitable for a business.


#4933557 Is it hard to sell games to another studio?

Posted by SimonForsman on 21 April 2012 - 11:45 AM


Do remember that there's a difference between having a business plan and carefully considering monetization options (which is a Good Thing) and hoping to "get rich quick" (which is a fool's errand).

You've only been told one of these things is bad, and it's been clearly explained why. Don't confuse the issue looking for a disagreement when people are just trying to give clear and helpful advice; especially given everyone has taken the time to explain their reasoning.


I disagree that you shouldnt design the game to make a lot of money.

When you make a game you should make it with money as your first priority.
And one of the biggest factors that make you money is the amount of players you have... so if you want a lot of player you need to make a great game.
So money is the best goal when you make a game.

But if you make your first goal making a great game.. then you might completely skip the part of the best way ofmaking money of your game..
And so you do it as a last effort before shipping out the game... making small money of it when you could of made sooo much more.


Noone is saying that you shouldn't try to make as much money as possible, (Ofcourse you should), they're saying that you shouldn't go into the industry expecting to get rich quickly.

Starting any business in any field takes alot of hard work, Your first game will most likely not be highly profitable even if it sells well. When starting out you have no existing codebase to help you cut costs, no mindshare among your customers to drive sales(You have to market your game alot more, which eats up alot of the profit) and not enough money to compete directly with the AAA studios.


#4933553 Most professional GUI for directX in games

Posted by SimonForsman on 21 April 2012 - 11:29 AM

Hey,
Firstly I wanted to combine DirectX with WinAPI but it turns out that WinAPI controls are covered by any d3d rendered graphic. I heard that it's best to create ur own GUI for professional games, but does it mean creating everything from the scratch? like window creation, message loop, etc self written?
I just want to use the same technique that all professional game's studio uses to combine GUI elements with DirectX.
I would be really extremaly grateful for any help provided!


These days many(most?) AAA games use Autodesk Scaleform (It lets you integrate Flash GUIs in your OpenGL or DX games). While it is by far one of the easiest ways to make game GUIs it isn't cheap. (I think its included with UDK though)

as an indie you're probably better off using something like CeGUI.


#4933138 Why don't Game Designers get respected in indy teams?

Posted by SimonForsman on 20 April 2012 - 04:37 AM

Ultimately, as I think several people in this thread have already said, indie Game Designers are respected - once they have proven themselves. But then we're back in the same sort of chicken and egg situation that wannabe Game Designers face everywhere - you can't prove yourself unless someone will take you on, and no-one will take you on until you've proven yourself.


As a game designer, how do I get my foot in the door then? The view within a lot of indie teams seems to be that you must be able to contribute within some other role. But then there are others saying things (even within this thread) which negate this way of thinking;


By not aiming for a lead designer position for your first project, Level design can and is done for existing games, a designer doesn't need the help of anyone else to do that and if you are good at it you can join an existing indie team or even a AAA studio and work your way towards a lead position from there. (There are other paths aswell such as through QA or from a programmer or artist position, but those require that you pick up skills that aren't directly related to design). (This really isn't something that is unique for designers)


#4933097 Why don't Game Designers get respected in indy teams?

Posted by SimonForsman on 20 April 2012 - 12:36 AM



This sounds to be the way it is right now and is why I named the thread "Why dont game designers get respected in indy teams?"
Because they should get more respect.


Game designers do get alot of respect from indie teams, The problem lies entierly with the wannabe designers who really don't understand how game design works or the constraints of indie game development.

If you can point me towards one thread on these forums where a good game designer is trying to form an indie team but failing to do so i will not only rate you up, i will pitch in and help him/her out.


Well, I didn't say they were good game designers or good game concepts.
But the replies all those threads are saying that game designers need to do a second job as well is just wrong.
They should instead be replying that he is a bad game designer... or not post at all rather.


Can you atleast point out a thread or classified made by a game designer then ? (He doesn't even have to be good, he just have to actually offer to do all the design work) (i can rate you up for it but i won't waste my time helping out on such a project)


#4933088 Why don't Game Designers get respected in indy teams?

Posted by SimonForsman on 20 April 2012 - 12:13 AM

This sounds to be the way it is right now and is why I named the thread "Why dont game designers get respected in indy teams?"
Because they should get more respect.


Game designers do get alot of respect from indie teams, The problem lies entierly with the wannabe designers who really don't understand how game design works or the constraints of indie game development.

If you can point me towards one thread on these forums where a good game designer is trying to form an indie team but failing to do so i will not only rate you up, i will pitch in and help him/her out.




PARTNERS