• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Indie Game Development Discussion Thread | Of Being Professionally Poor

Status
Not open for further replies.

Tiu Neo

Member
Anybody care to shoot me some advice?

I decided to get into XNA a little while ago just because C# is friendly enough. After many tutorials, trials, and idea reworking I finally felt comfortable to move ahead but then of course Microsoft announces that they are no longer actively being developed for or will have complete support with Windows 8. I'm a bit bummed because it feels like all my work was for naught so I was wondering what my best alternative would be. Unity looks pretty attractive but I've always been a bit wary of it. How much control am I given at a coding level? I know it's not the case but looking at it from the outside, it always looked like a really fancy Gamemaker.

Monogame is pretty much opensource XNA with community support. It also runs on iOS, Android, Mac and Linux. It's pretty easy to port a simple XNA game to Monogame.

If you want something different, Unity seems pretty powerful and not that hard to learn, too.
 

Turfster

Member
Anybody care to shoot me some advice?

I decided to get into XNA a little while ago just because C# is friendly enough. After many tutorials, trials, and idea reworking I finally felt comfortable to move ahead but then of course Microsoft announces that they are no longer actively being developed for or will have complete support with Windows 8. I'm a bit bummed because it feels like all my work was for naught so I was wondering what my best alternative would be. Unity looks pretty attractive but I've always been a bit wary of it. How much control am I given at a coding level? I know it's not the case but looking at it from the outside, it always looked like a really fancy Gamemaker.

I've ported my basecode of my latest project from xna to unity, and it's been... going pretty well.
You can do quite a lot in code, I basically start with an "empty" world apart from a camera and a dummy object I've got my generation scripts assigned to, and it builds an entire procedural world mesh and populates it with NPCs.
 

cbox

Member
Anybody care to shoot me some advice?

I decided to get into XNA a little while ago just because C# is friendly enough. After many tutorials, trials, and idea reworking I finally felt comfortable to move ahead but then of course Microsoft announces that they are no longer actively being developed for or will have complete support with Windows 8. I'm a bit bummed because it feels like all my work was for naught so I was wondering what my best alternative would be. Unity looks pretty attractive but I've always been a bit wary of it. How much control am I given at a coding level? I know it's not the case but looking at it from the outside, it always looked like a really fancy Gamemaker.

Where does it say they won't be supporting it? Last I heard they just weren't releasing any new versions. We're almost done our xna game :|
 

-COOLIO-

The Everyman
For the mobile devs out there, what minimum devices are you targeting?

it sucks, but performance is starting to get wonky for me on the andreno 220 gpu hp touchpad. hopefully i can get things going at a constant 60fps by the time i'm done months/years form now. and then maybe i can get at least 30 fps on even older stuff. what about the rest of you guys? anyone still shooting for iphone 1 smoothness?
 

Shai-Tan

Banned
was looking at Puppy Games (Revenge of the Titans, Ultratron) site today to see if they were porting any of their games to Vita (guess not) and ran into this depressing blog about not making any money with their games (yet):

http://www.puppygames.net/blog/?p=1369

he suggests various reasons (take too long to make, genre that aren't popular) comments suggest some others (poor promotion, not on Steam until recently, etc)
 

Feep

Banned
Time to ask my new Unity bros for help.

I may actually not be able to use it at all. The most recent version of Mono does implement the System.Speech library, but apparently Unity is not up to date with the most recent version of Mono. One of the devs on the Unity forums suggested I could just drop the "assemblies" into the Assets folder (by which I think he meant System.Speech.dll), which I did. At first, I thought everything was cool! I could say using System.Speech.Recognition in my scripts, and it gave me no errors.

However, as soon as I tried to do the simplest thing with it, Unity crashed immediately. See the following code:

Code:
using UnityEngine;
using System.Collections;
using System.Speech.Recognition;

public class VoiceRec : MonoBehaviour {
	
	public SpeechRecognitionEngine speechEngine;
	
	// Use this for initialization
	void Start () {
		speechEngine = new SpeechRecognitionEngine();
	}
	
	// Update is called once per frame
	void Update () {
	}
}

So that sucks. I guess it isn't supported? Has anyone written plugins (it requires Unity Pro)? Am I totally screwed? I absolutely need this library...Unity is a non-starter for me if I can't get it.

Edit: Maybe I was importing the Microsoft .NET version of System.Speech.dll, instead of the Mono version? Where can I find that version? I don't know what's happeningggg
 

IndianElephant

Neo Member
Unity looks pretty attractive but I've always been a bit wary of it. How much control am I given at a coding level? I know it's not the case but looking at it from the outside, it always looked like a really fancy Gamemaker.

Depending on the sort of thing I'm making, I will often do almost everything at the code level. The trick is getting familiar with how GameObjects and their components and instantiation work. There are some things that are unfortunately obscured at script level, e.g. I seem to remember it being difficult to mess with parameters for the newer particle system from script, but for the most part it's wide open. Of course, even if you go with a code-heavy approach, it's still almost always a good idea to make prefabs in the editor that you can then instantiate from script.
 
Going for a spin.

PhI8Fbl.png
 

Genji

Member
Edit: Maybe I was importing the Microsoft .NET version of System.Speech.dll, instead of the Mono version? Where can I find that version? I don't know what's happeningggg

If you have a version of Mono installed, see if you can find it here:

/Library/Frameworks/Mono.framework/(version #)/lib/mono/gac/

Although I guess there's no guarantee it'll work since it doesn't look like it's part of the version of Mono currently supported by Unity :|
 

Popstar

Member
but apparently Unity is not up to date with the most recent version of Mono.
When I was using Unity last year I tracked a couple bugs down to the Mono runtime... that had been fixed in Mono around three years ago :( If they haven't updated to a newer version with the Unity 4.x releases it wouldn't be surprising that newer libraries wouldn't work well with it.

Has anyone written plugins (it requires Unity Pro)?
I have. It's not difficult.
 

Feep

Banned
If you have a version of Mono installed, see if you can find it here:

/Library/Frameworks/Mono.framework/(version #)/lib/mono/gac/

Although I guess there's no guarantee it'll work since it doesn't look like it's part of the version of Mono currently supported by Unity :|
I might be missing something obvious, but where is that path starting from? It doesn't appear in the base Mono 2.10.9 install directory under Program Files, nor does it seem to appear in the C:\Windows\Assembly folder (after disabling Windows' weird assembly viewer).

I have. It's not difficult.
You and I should hang out.
 

Feep

Banned
Feel free to ask if anything is unclear in the documentation.

Oh, and if anyone is curious the branch of Mono that Unity uses is available in their GitHub repository. The Unity 4.1 branch looks like it's still based on Mono 2.6. So no C#/.NET 4.0 stuff as wikipedia tells me that was added in 2.8.
Which sucks, but I got this response from a Unity Dev:

1) What are the odds of getting the latest version of Mono supported sometime in the next year?
That really depends on what you mean... I doubt we'll do a proper mono sync in the next year, but we continuously take fixes and improvements.
Have you tried copying the mono assemblies and their dependencies into a unity project? Just because it came with 4.5 doesn't mean it require 4.5. Odds are it just works(tm).

2) Is it possible to write plugins or something to get external libraries working? How difficult is it?
Adding any mono/.NET assembly to your project is as easy as drag and drop.
Adding native libraries require pro and is not supported on web platforms.
So I figured I might as well try it. Still can't find the assemblies Genji mentioned, though.
 

razu

Member
For the mobile devs out there, what minimum devices are you targeting?

it sucks, but performance is starting to get wonky for me on the andreno 220 gpu hp touchpad. hopefully i can get things going at a constant 60fps by the time i'm done months/years form now. and then maybe i can get at least 30 fps on even older stuff. what about the rest of you guys? anyone still shooting for iphone 1 smoothness?


I aimed for 60fps on a Samsung S2/iPhone 4S and better. Amusingly I managed to not filter out the 3GS, but people played it and said it was fine..!

The problem is that to support the 4S you have to support the 4, which is a dog.

In iPad land I supported iPad2 or better.
 

Genji

Member
So I figured I might as well try it. Still can't find the assemblies Genji mentioned, though.

Try /Program Files (x86)/(version #)/lib/mono/gac. For me it's C:\Program Files (x86)\Mono-3.0.9\lib\mono\gac. Unfortunately a quick scan through the files and directories there doesn't come up with System.Speech :( I'll take a more thorough look later when I'm at work.
 

cbox

Member
Made the controls screen finally, man there are so many little things you never think about that always crawl up right at the last minute. Had a blast hand drawing everything though!

controls_xbox.jpg
 

Blizzard

Banned
I've been wondering, as indie devs, what do you do about health insurance?
This is a very good question (I live in the U.S. where this would especially be an issue).

Made the controls screen finally, man there are so many little things you never think about that always crawl up right at the last minute. Had a blast hand drawing everything though!

*360 controller*
Does your game support generic gamepads or only the 360 controller? If your game gets much popularity, you may get a few people complaining if gamepads don't work, just warning you. :p
 

cbox

Member
Like. But why is LT on the right, and RT on the left..?

god damnit I just noticed that! This is what working late does to you :p Nice catch

Does your game support generic gamepads or only the 360 controller? If your game gets much popularity, you may get a few people complaining if gamepads don't work, just warning you. :p[/QUOTE]

I THINK, I have to double check with my friend but I'm sure he can add in generic commands.
 
I started to dip my hand in game development recently. Mostly with HTML5 stuff currently, before I try my hand at Unity/etc. Just a simple tower defense type of game. In fact, really nothing about it is original. Just using it as a stepping stone before I try something more original/challenging/creative. I have a few graphics/sound effects in place.

Space Defense (works best in latest version of Chrome/Firefox)

I have a few ideas floating in my head of what I might want to create. Platformer game and physics puzzle game come to mind. I'll prob start simple with a platformer game before I do the other, as a way to introduce myself to a physics engine first.
Been playing around with this a lot, I have enjoyed it quite a bit! :) Did you use any particular engine for this game or did you create it from the ground up with your own code?
 

GulAtiCa

Member
Been playing around with this a lot, I have enjoyed it quite a bit! :) Did you use any particular engine for this game or did you create it from the ground up with your own code?

Built it all by myself. But nothing too fancy going on. No physics engine or anything of that sort, since all done via click interactions and everything runs on it's own. When I decide to tackle a more interesting project, like a platformer/etc game, that involves a physics engine, I will prob try out Unity to run bigger projects.

Oh and woops! I forgot to reset the score every time the game resets. lol. This explains why the leaderboard had such odd scores. Going to reset leaderboard as well.
 

Uhyve

Member
Built it all by myself. But nothing too fancy going on. No physics engine or anything of that sort, since all done via click interactions and everything runs on it's own. When I decide to tackle a more interesting project, like a platformer/etc game, that involves a physics engine, I will prob try out Unity to run bigger projects.

Oh and woops! I forgot to reset the score every time the game resets. lol. This explains why the leaderboard had such odd scores. Going to reset leaderboard as well.
It seriously is quite addictive, not usually a fan of tower defence style games, but yeah, that was good. Might wanna add some sort of volume control though.

PS Awww, it got reset, I was in the top ten... ish... I think.
 

phantomsnake

Neo Member
Updated the scene, now you can control the tv and watch different channels. http://dl.dropbox.com/u/14109231/NESMUSICBOX.html

Controls are still pretty horrible, didn't have time to fix them yet. after i fixz them somewhat i think this one is done. I might add some other stuff though, like walkman or some old legos.

Oh wow, you actually did it! And now it has TNG?! This is like a time capsule of the late 80s / early 90s. I love it. :)
 

-COOLIO-

The Everyman
I aimed for 60fps on a Samsung S2/iPhone 4S and better. Amusingly I managed to not filter out the 3GS, but people played it and said it was fine..!

The problem is that to support the 4S you have to support the 4, which is a dog.

In iPad land I supported iPad2 or better.

sounds good to me. i dont think theres much nexus ones, or galaxy s' left in the wild. s2 and iphone4 seem like good bare minimums.

btw, i checked the play store and i noticed you realeased chopper mike, hows it doing do far?
 

razu

Member
sounds good to me. i dont think theres much nexus ones, or galaxy s' left in the wild. s2 and iphone4 seem like good bare minimums.

btw, i checked the play store and i noticed you realeased chopper mike, hows it doing do far?

Sales-wise, not great. Reaction from players, great! :D
 
I've been wondering, as indie devs, what do you do about health insurance?

TBH in my case (and many other devs), we just have regular IT day jobs and indie jobs at night :)

The money you make as a regular IT guy is a few times higher then what you make as a games developer, so financially this is the best course of action. Ofc that leaves less time to develop indie stuff... sometimes you have to compromise :S
 

desu

Member
TBH in my case (and many other devs), we just have regular IT day jobs and indie jobs at night :)

The money you make as a regular IT guy is a few times higher then what you make as a games developer, so financially this is the best course of action. Ofc that leaves less time to develop indie stuff... sometimes you have to compromise :S

Well that requires a boss that allows you to release anything at all that you made in your free time.
 

AndyBNV

Nvidia
Extremely detailed post up on the Dustforce dev's website, detailing sales, costs, and a ton more. Here's one small snip from the giant post:

The final figure for our income after exactly one year of sales is $489,404 USD (from a total of $668,490 in revenue). Of course, there are also costs to running the business: legal and accounting fees, software licenses, server costs, and some travelling expenses have added up over the past year to take a good $36k or so out of our total income. When you take that into account, along with personal income taxes, we are left with around $295k. In the end, this means that for every $10 copy of Dustforce sold, $4.41 of it ended up in our pockets. We then split this between the four of us.

http://hitboxteam.com/dustforce-sales-figures
 

razu

Member
Been playing with a scan line image effect in Unity. Works nicely. In this scene I have two NGUI UIs. The big one has the image effects on, and the small one is effect-less.



Will try to make a small, playable something with it in the next few days..

Edit: Woo hoo!!



Now, ladies and gentlemen, we are talking!! :D



Edit: BOOM!!

 

gofreak

GAF's Bob Woodward
Very spur of the moment, decided to share early work on my first game. Or a little bit of it.

Been working on this aspect for the last week or so.

ZQLiE19.png


It's a procedurally generated galaxy, viewed from 20,000 light years, the galactic core to the right of the image. It takes about 10 minutes to generate at the moment (hundreds of millions of stars pass through the shaping functions), which is problematic, but if runs smoothly once done :p

Each star is a 'real' positioned object. At the moment they're all of homogenous size and color, but I'm going to alter the functions to inject some physically appropriate variety.

Anyways, still early days, but this is one aspect of a game I've wanted to (try to) make for 4+ years now. Might be biting off more than I can chew but we'll see!
 

cbox

Member
TBH in my case (and many other devs), we just have regular IT day jobs and indie jobs at night :)

The money you make as a regular IT guy is a few times higher then what you make as a games developer, so financially this is the best course of action. Ofc that leaves less time to develop indie stuff... sometimes you have to compromise :S

This is me as well. By day I'm a designer, and by night I help with our game. It would be great to have all day to work on my project but food is kinda more important.


Looks great!
 

Feep

Banned
Very spur of the moment, decided to share early work on my first game. Or a little bit of it.

Been working on this aspect for the last week or so.

ZQLiE19.png


It's a procedurally generated galaxy, viewed from 20,000 light years, the galactic core to the right of the image. It takes about 10 minutes to generate at the moment (hundreds of millions of stars pass through the shaping functions), which is problematic, but if runs smoothly once done :p

Each star is a 'real' positioned object. At the moment they're all of homogenous size and color, but I'm going to alter the functions to inject some physically appropriate variety.

Anyways, still early days, but this is one aspect of a game I've wanted to (try to) make for 4+ years now. Might be biting off more than I can chew but we'll see!
So you wrote a method with a signature something like

protected void galacticReshape(List<Star> starCollection);

Because that's awesome.
 

gofreak

GAF's Bob Woodward
So you wrote a method with a signature something like

protected void galacticReshape(List<Star> starCollection);

Because that's awesome.

It's something a bit like that!

The collection is just randomly generated. Each star has to pass a couple of tests, so you might have XX million candidates that turn into Y million stars. There's a few different tests to control the shape of different parts of the structure, and there's a certain amount of artistic control.

In this I am but a student of Ysaneya, and his work on Infinity. His remains the best work I've seen in this kind of stuff, and I used his notes on his galaxy generation as a starting point. The game I want to make is quite different from what he's building, but I want to try and convey a similar sense of mm->lightyear scale and believability etc. It was kind of a test also to see how flexible Unity could be, I've been pleasantly surprised.
 

Blizzard

Banned
I'm pretty impressed if Unity is rendering millions of objects, even if they're simple. Is there a world size limit like UDK's due to floating point absolute position precision or similar?
 

fr3shme4t

Neo Member
I've been wondering, as indie devs, what do you do about health insurance?

Live in a 1st world country?

But seriously I live in Canada and one reason I moved back here to do game dev was the cost of living. Health care is a huge part of this when you're trying to live frugally and $0 is pretty compared to most places.
 

Blizzard

Banned
Can anyone who knows GLSL help me understand two super basic vertex shader concepts?

Example code has this:
Code:
  gl_Position = vec4(v_coord, 0.0, 1.0);

  f_texcoord = (v_coord + 1.0) / 2.0;
I understand gl_Position is the output vertex, as a 4D vector. I understand v_coord are input coordinates of some sort (un-precomputed texture coordinates?). I understand there's something about homogeneous coordinates and I don't fully follow all the math and conceptual representation there. But in the end, I understand that a 0 and 1 are getting added as the last two vertex elements. Why is this the case, for a vertex shader that is intended to simply process a 2D surface?

Secondly, f_texcoord is the output being passed to the fragment shader, but why add 1 and divide by 2?

*edit* This seems to explain it, at least a bit: http://duriansoftware.com/joe/An-intro-to-modern-OpenGL.-Chapter-2.2:-Shaders.html
It would seem that the Z coordinate is used for depth-related stuff (which I presumably don't need in 2D, at least not for a image-processing effect like I am doing), and W is used for perspective projection, but I am just looking at a straight-on 2D view so I guess everything is automatically handled there. And apparently 0 and 1 are the default values to make this happen.

And the + 1 / 2 thing is to convert from (-1, 1) to (0, 1) texture coordinate space.
 

Anustart

Member
Well I did it. My game is due tomorrow and I'm just now putting the finishing touches on it. My first platformer and I'm rather proud of the outcome, put a ton of effort into this project. Only thing that saddens me is this was a 3 man team, and the % effort was 0% guy 1, 90% me, 10% guy 3.

Oh well.
 

Popstar

Member
Can anyone who knows GLSL help me understand two super basic vertex shader concepts?

Example code has this:
Code:
  gl_Position = vec4(v_coord, 0.0, 1.0);

  f_texcoord = (v_coord + 1.0) / 2.0;
I understand gl_Position is the output vertex, as a 4D vector. I understand v_coord are input coordinates of some sort (un-precomputed texture coordinates?). I understand there's something about homogeneous coordinates and I don't fully follow all the math and conceptual representation there. But in the end, I understand that a 0 and 1 are getting added as the last two vertex elements. Why is this the case, for a vertex shader that is intended to simply process a 2D surface?

Secondly, f_texcoord is the output being passed to the fragment shader, but why add 1 and divide by 2?

When transforming a vertex in the shader, your result is in normalized device coordinates. These range from -1 to +1 for X, Y and Z dimensions. So the 0 added just means to put the Z coordinate in the middle since we're doing 2D and don't care about it. The added 1 right at the end is for the W coordinate which is used for the perspective divide, needed for perspective correct texture mapping in 3D. Since we're just doing processing in 2D without perspective, this is set to 1 since n/1 = n.

Texture coordinates go from 0 to 1. So adding 1 and dividing by 2 remaps from device coordinates to texture coordinates. [-1 .. 1] adding one becomes [0 .. 2], and then dividing by 2 for [0 .. 1].

EDIT: Too slow, you found it while I was typing.
 

Blizzard

Banned
When transforming a vertex in the shader, your result is in normalized device coordinates. These range from -1 to +1 for X, Y and Z dimensions. So the 0 added just means to put Z coordinate in the middle since we doing 2D and don't care about it. The added 1 right at the end is for the W coordinate which is used for the perspective divide, needed for perspective correct texture mapping in 3D. Since we're just doing processing in 2D without perspective, this is set to 1 since n/1 = n.

Texture coordinates go from 0 to 1. So adding 1 and dividing by 2 remaps from device coordinates to texture coordinates. [-1 .. 1] adding one becomes [0 .. 2], and then dividing by 2 for [0 .. 1].

EDIT: Too slow, you found it while I was typing.
That's still good info, thanks a lot. I didn't realize anything would divide by the W value for example.
 
Status
Not open for further replies.
Top Bottom