Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Don Mega
Nov 26, 2005
Does anyone have any good indie/game dev forums that they visit frequently?

Adbot
ADBOT LOVES YOU

xzzy
Mar 5, 2009

This one. :angel:

Jo
Jan 24, 2005

:allears:
Soiled Meat

Don Mega posted:

Does anyone have any good indie/game dev forums that they visit frequently?

http://reddit.com/r/gamedev is a place I stop in every so often.
http://flipcode.com is back and about after a while.

Shalinor
Jun 10, 2002

Can I buy you a rootbeer?

Don Mega posted:

Does anyone have any good indie/game dev forums that they visit frequently?
TIGSource: http://forums.tigsource.com/index.php
TouchArcade (if you're iOS/Android indie): http://forums.toucharcade.com/

TIG's still kind of "the" official indie dev forum for the internet, at the moment. I don't pop over very often, but if you want to talk shop, it's solid.

EDIT: Man, I could do with a rebirth of flipcode. I miss proper gamedev images of the day.

Shalinor fucked around with this message at 20:07 on Aug 28, 2012

ynohtna
Feb 16, 2007

backwoods compatible
Illegal Hen
Holy poo poo, Flipcode really is coming back! I hope to hell their first new image of the day is a terrain engine.

Deki
May 12, 2008

It's Hammer Time!
I see that Steam updated it's client to allow everyone to use the new features, has Valve pushed back greenlight publically or should I expect it to come out in a few days plus or minus valve time?

Don Mega posted:

Does anyone have any good indie/game dev forums that they visit frequently?

I like GameDev.net, but mostly because they gave me a bunch of swag two or so years ago.

Deki fucked around with this message at 03:26 on Aug 29, 2012

General_Failure
Apr 17, 2005
Sweet links. Bookmarked.

A while back I think I mentioned I was playing with the SGE sprite etc. libraries for SDL. A few days ago I revisited my scrap of a test project and started extending it as a morning coffee project of sorts. It'll always be just a test program but I'm using it to sort out some code snippets at very least. Hopefully some to go on to be something reusable. Part of the useful things that irritate me to make restoration project.

The only reason I kicked it off again is because I decided to review Java from the basics wherein I quickly remembered where my deep seated loathing comes from. A damned CLI hello world wouldn't even work without bursting into flame. Compiles without an issue but as soon as I run it java just spits out a heap of errors and terminates. Android NDK looks more attractive every day as a possibility.

By the way I see that Unity3D now has working linux demos. If it weren't for the fact it requires downloading a Windows or MacOS version I'd be in to give it a try.

edit: forgot why I came here. Unless I misread, the Bullet "HelloWorld" source should actually do something, right? It doesn't seem to actually do more than possibly loading and exiting silently. It looked like a good basis for me to extend on to explore the bullet physics.

Cat Plus Plus
Apr 8, 2011

:frogc00l:

General_Failure posted:

The only reason I kicked it off again is because I decided to review Java from the basics wherein I quickly remembered where my deep seated loathing comes from. A damned CLI hello world wouldn't even work without bursting into flame. Compiles without an issue but as soon as I run it java just spits out a heap of errors and terminates. Android NDK looks more attractive every day as a possibility.

It's not. It's really, really not. If you want to develop for Android, but don't want to touch Java, use Scala. It's fun, expressive, mixed-paradigm language where you don't have to write ton of boilerplate to do anything more complex than 2+2. NDK is just about good for glueing existing C(++) code into JVM, but not for writing entire applications in.

General_Failure
Apr 17, 2005

PiotrLegnica posted:

It's not. It's really, really not. If you want to develop for Android, but don't want to touch Java, use Scala. It's fun, expressive, mixed-paradigm language where you don't have to write ton of boilerplate to do anything more complex than 2+2. NDK is just about good for glueing existing C(++) code into JVM, but not for writing entire applications in.

I saw something about Scala but know nothing of it. I'll look into it for sure.

By the way, it's worth noting that essentially the same "Hello World" but written in AIDE on my tablet, and outputting text to who knows where still compiled and ran without issue.
The touchiness and inconsistencies in Java really infuriate me. Not in the language. That seems pretty consistent. In the platform specific implementation and in compatibility breaking differences on the one platform.

While we're on C++, I have a toolchain, C4Droid on my tablet. I also have the GCC and SDL plugins. beyond adding the header I haven't tried SDL yet although I am genuinely curious how that was pulled off. The lack of information on things like how this setup handles events kind of scares me off. Otherwise it seems like another option. Do the bigboy code on the PC, shunt it across, compile and tweak onboard.

But, you mention Scala as an option. Downloading Debian packages now actually. I'll give it a spin. Always willing to add another language to my list.

General_Failure
Apr 17, 2005
Back from my excursion into Scala tutorial world. Very sparse place. But from what I gleaned from my adventure the syntax seems to be an odd fusion of the C family and BASIC, and the functions are a lot like Pascal but with braces.

I was trying it with an immediate mode interpreter online. Still have to try some on the computer but from a Baby's first steps perspective it looks okay.

I don't know anything about the more complex aspects yet, and really the C family syntax doesn't bother me a bit, but Java and I have always been a very poor match.

There seem to be a few options for things that use the Dalvik VM but Scala seems to be one of the most mature. There is a Pascal implementation which also compiles to Dalvik VM bytecode but I don't think it's terribly complete.

C/C++ mostly appealed to me because it's a way of sidestepping that odd Java fragility I keep bumping into. That and I have an onboard compiler with SDL support.

Android development is also interesting because in spite of lousy product visibility it is very easy to get a product out there. Complexity doesn't need to be high but it does need to work properly.

Above Our Own
Jun 24, 2009

by Shine
Hey I'm looking for a resource to learn some game development techniques, mainly focusing on 2D gaming. I have a solid grounding in several languages and I'm not new to programming concepts, I just don't really want to go reinvent the wheel myself for things like how to handle all the enemies in a level or things like that.

Does anyone know of any good books that focus on different techniques and methods along those lines? Most of the "Get started with game development" books assume the reader is inexperienced with programming and spend a lot of time going over the basic concepts of how to draw a sprite on a screen or OOP basics, and I was just wondering if there's any good books that focus more on commonly used methods for pathfinding, AI, state management, handling sidescrolling levels, etc.

Hubis
May 18, 2003

Boy, I wish we had one of those doomsday machines...

ynohtna posted:

Holy poo poo, Flipcode really is coming back! I hope to hell their first new image of the day is a terrain engine.

This, a thousand times this

General_Failure
Apr 17, 2005
Just popping back in because maybe possibly some people might be interested.

I had a look into the situation with compiling Pascal into Java bytecode. Apparently it's still in pre-release but still pretty complete and has been incorporated into the trunk. So I downloaded a snapshot and the example program they used as a test and damned if I could get it to compile. Oddly nearly the same problem I'm having with plain ol' Java on this PC. Starting to think the issue is Java on this computer.
Didn't work with normal java or the -Tandroid flag set.

The concept of being able to compile other languages into bytecode compatible with the JVM is one I fully approve of. Especially because there are people that aren't fond of Java like myself.

For some inscrutable reason I took that SDL Pascal test I wrote recently and started rewriting the tiling functions I wrote in the SGE test over the past few days but in object Pascal which I've never touched before. Although it is looked upon as an educational language or one for making so-so business apps it's really quite easy to work with so why not. At worst it can be ported to C++ easily so no big deal.

I've seen a lot of negative things about object Pascal. It's really not that bad. It's like a C++ / Java hybrid.
Again, no problem with actual Java as a language. It's just how easily Java programs fall to pieces that gets under my skin.

UraniumAnchor
May 21, 2006

Not a walrus.

General_Failure posted:

C/C++ mostly appealed to me because it's a way of sidestepping that odd Java fragility I keep bumping into. That and I have an onboard compiler with SDL support.

Speaking as somebody who ranks C++ far above Java, and whose current job it is to port C++ code to Android, do not write Android apps in C++ if you don't have a good reason to. Porting over an existing codebase (or writing something that's supposed to be platform neutral, I suppose) or writing high-performance code (games in general are not high-performance code in this context) are two good reasons. Not wanting to write in Java is not a good reason.

Can't speak for Scala, though, as I've never used it.

Paniolo
Oct 9, 2007

Heads will roll.
I think it's hilarious to suggest that C++ is somehow less fragile than Java. The very last thing in the world C++ is good at is preventing you from blowing your own legs off, while that's pretty much Java's raison d'etre.

MarsMattel
May 25, 2001

God, I've heard about those cults Ted. People dressing up in black and saying Our Lord's going to come back and save us all.

Hubis posted:

This, a thousand times this

http://flipcode.com/iotd/2012-08-29

Unfortunately not a terrain engine, but it is from the same guy who had the very first one 13 years ago. This makes me feel old :corsair:

That Turkey Story
Mar 30, 2003

I haven't done any Android development -- what are the problems with the NDK that make porting C++ code so horrible?

forelle
Oct 9, 2004

Two fine trout
Nap Ghost

MarsMattel posted:

http://flipcode.com/iotd/2012-08-29

Unfortunately not a terrain engine, but it is from the same guy who had the very first one 13 years ago. This makes me feel old :corsair:

http://www.flipcode.com/archives/01-31-2002.shtml



My IOTD from 31st January 2002. 10 years ago. Talk about feeling old. I've learnt a bit about marketing and UI design since then. :)

Shameproof
Mar 23, 2011

Unormal posted:

Figured out a way to capture it, here's a little demo showing lots of lights, atmospheric scattering, and stuff. All horrible, visually, from a connoisseur's standpoint; but all in C#. The video recording software made it not run at 400 fps, don't blame C# :)

https://www.youtube.com/watch?v=Ev-lK1lvxmA

e: horrible at spelling.

HOLY CRAP. This is the best looking Minecrafty engine I've seen yet. How did you what's your secret?

Unormal
Nov 16, 2004

Mod sass? This evening?! But the cakes aren't ready! THE CAKES!
Fun Shoe

Shameproof posted:

HOLY CRAP. This is the best looking Minecrafty engine I've seen yet. How did you what's your secret?

Don't make fun of me :(

http://en.wikipedia.org/wiki/Deferred_shading
http://http.developer.nvidia.com/GPUGems2/gpugems2_chapter09.html
http://www.guerrilla-games.com/publications/dr_kz2_rsx_dev07.pdf
http://www.leadwerks.com/files/Deferred_Rendering_in_Leadwerks_Engine.pdf

Shameproof
Mar 23, 2011

I'm not making fun of you. I'm more interested though in how you stored the scene (graph, array, whatever) and how you sent them over the the GPU. When scenes are dense with dynamic objects (like in Minecraft), most of the tricks used by 3d game engines have to get thrown out the window.

Shameproof fucked around with this message at 20:55 on Aug 30, 2012

Unormal
Nov 16, 2004

Mod sass? This evening?! But the cakes aren't ready! THE CAKES!
Fun Shoe

Shameproof posted:

I'm not making fun of you. I'm more interested though in how you stored the scene (graph, array, whatever) and how you sent them over the the GPU. When scenes are dense with dynamic objects (like in Minecraft), most of the tricks used by 3d game engines have to get thrown out the window.

The general approach of most clones is to store the world in big cubic or rectangular chunks which are loaded and unloaded on the fly, and you can do fast occlusion and frustum culling on. I just store each chunk as a vertex buffer, and when something changes re-calculate the vertex buffer on a worker thread and swap it in when ready. Nothing fancy, really.

Shalinor
Jun 10, 2002

Can I buy you a rootbeer?

Unormal posted:

The general approach of most clones is to store the world in big cubic or rectangular chunks which are loaded and unloaded on the fly, and you can do fast occlusion and frustum culling on. I just store each chunk as a vertex buffer, and when something changes re-calculate the vertex buffer on a worker thread and swap it in when ready. Nothing fancy, really.
Does it take fancy optimization?

I've wanted to fiddle with that style of thing for ages, but I'd kind of assumed if I did it naively, it would destroy even a big beastly quad core machine. Sparse data structures + cellular automata is kind of scary.

EDIT: VV Now that is cool. Since the voxel data is GPU-side, it even opens the door to running all of your cellular automata on the GPU. Huh.

Shalinor fucked around with this message at 21:10 on Aug 30, 2012

Shameproof
Mar 23, 2011

So you check entire chunks to see if they are occluded? OK.

A moderator on the OGRE Forums did something very clever. He created giant triangles for each plane and drew the cube faces as textures on the triangles.

quote:

The way it's working is that I've got sliced the world into 512 planes per axis (256 facing +axis and 256 facing -axis). Each plane is 2 triangles, giving 3072 triangles total. So each face of each cube is shared by 65535 other cubes.
I've got 2 textures. One is a 16x16 texture atlas of tiles, which I "borrowed" from a minecraft mod page. The second is a 256x256x256 3d texture. I have a shader which uses the 3d position of each pixel to look up the second texture, take that colour and treat the green and blue channels as tile index values in the texture atlas. So if the 3d texture had 0x00000204 as it's colour, the matching cube would use the tile at 2,4 in the 16x16 atlas. It's based on a font shader I wrote a while ago.

Changing the map (digging or building) doesn't require any geometry changes. All you have to do is modify a pixel in the voxel texture to chang what cube is rendered at that location, give it the index of a transparent cube and alpha rejection will cull it out.

Unormal
Nov 16, 2004

Mod sass? This evening?! But the cakes aren't ready! THE CAKES!
Fun Shoe

Shalinor posted:

Does it take fancy optimization?

I've wanted to fiddle with that style of thing for ages, but I'd kind of assumed if I did it naively, it would destroy even a big beastly quad core machine. Sparse data structures + cellular automata is kind of scary.

EDIT: VV Now that is cool. Since the voxel data is GPU-side, it even opens the door to running all of your cellular automata on the GPU. Huh.

Nope, nothing fancy going on at all, at least in my demo. Once you've got the VBOs generated and culling correctly it's quick as can be. You can get tricky with how fast you update your VBOs, so that you get less hitching/frames between a geometry update, but it's pretty easy to render a ton of geometry.

I just chunked it up into 32x32x32 block VBOs and did frustum and occlusion culling on them, and was able to display a huge amount of terrain.

UraniumAnchor
May 21, 2006

Not a walrus.

That Turkey Story posted:

I haven't done any Android development -- what are the problems with the NDK that make porting C++ code so horrible?

Once you get past the initial setup issues, writing JNI code is a monstrous pain in the rear end. Hope you like lots of reference management that's somehow WORSE than C-style memory management.

Also mistyping the signature of a Java function and not having it manifest as a problem until runtime is a lot of fun.

JNI function signatures look like this:

code:
"(Landroid/content/IntentSender;Landroid/content/Intent;III)V"

General_Failure
Apr 17, 2005

Paniolo posted:

I think it's hilarious to suggest that C++ is somehow less fragile than Java. The very last thing in the world C++ is good at is preventing you from blowing your own legs off, while that's pretty much Java's raison d'etre.

Oh nonono, you misunderstand me. I'm not saying this from the sense of it stopping a person doing something stupid. Yes Java is good at that, with its lack of pointer arithmetic and a lot of other dangerous things plus there's features like garbage collection etc. I'm not referring to the developer POV, although I suppose that could be inferred. The point I was trying to get across is that the actual programs can be upset so drat easily when they really shouldn't be able to. All the different JVMs, versions etc. make an absolute minefield out of what will work.
I suppose from the developer's point of view it can be possible to trip up on an invisible constraint or issue where differences lurk in behaviour between the JVM on different devices.

In theory the idea behind Java is brilliant. In practice, consistency of implementation really kills what could have been a slowish but totally portable framework for taking programs anywhere.

That Turkey Story besides specifics for Android it needs to interface with various Java bits and pieces still. Even on the Android NDK site they dry to turn people away from it because of the penalties incurred from the lack of compatibility with devices and the slowness of interfacing a native program with Java.

Still there are a lot of pretty much straight ports out there that did it just fine.

edit: serves me right for walking away for a bit halfway through a post ^^^ That's a better explanation up there.

General_Failure fucked around with this message at 22:21 on Aug 30, 2012

Mug
Apr 26, 2005
Here's a new video of some stuff I made happen.
https://www.youtube.com/watch?v=Gan7L1GaTJU

DrMelon
Oct 9, 2010

You can find me in the produce aisle of the hospital.

Mug posted:

Here's a new video of some stuff I made happen.
https://www.youtube.com/watch?v=Gan7L1GaTJU

I love your little isometric speech bubbles popping in and out. The hacking mechanic seems interesting - what other sorts of interactions with the environment do you have planned?

General_Failure
Apr 17, 2005

Mug posted:

Here's a new video of some stuff I made happen.
https://www.youtube.com/watch?v=Gan7L1GaTJU

I maintain that is very cool. The new features, or at least extra features shown in the video are good too. The dangerously heavy looking speech bubbles are a nice touch like DrMelon said. I'm still digging the whole look of your project.

Mug
Apr 26, 2005

DrMelon posted:

I love your little isometric speech bubbles popping in and out. The hacking mechanic seems interesting - what other sorts of interactions with the environment do you have planned?

I don't really like talking about what I have "planned" because I don't want to make promises I can't keep. I have a lot of stuff to try to implement still so I just slowly show new stuff as I make it go.

General_Failure
Apr 17, 2005

Mug posted:

I don't really like talking about what I have "planned" because I don't want to make promises I can't keep. I have a lot of stuff to try to implement still so I just slowly show new stuff as I make it go.

Understand that totally. I appreciate you taking the time to post progress. It is actually pretty inspiring.

Mug
Apr 26, 2005

General_Failure posted:

Understand that totally. I appreciate you taking the time to post progress. It is actually pretty inspiring.

Incase you didn't know, there's a blog at https://www.manfightdragon.com.au with screenshots all the way back to the start of the development.

OneEightHundred
Feb 28, 2008

Soon, we will be unstoppable!
Looks pretty solid so far, though the RA2 player in me is slightly bothered by the fact that it looks like things are not capable of moving diagonally (or horizontally/vertically, given the camera orientation).

Mug
Apr 26, 2005

OneEightHundred posted:

Looks pretty solid so far, though the RA2 player in me is slightly bothered by the fact that it looks like things are not capable of moving diagonally (or horizontally/vertically, given the camera orientation).

It's a design decision to ensure creatures always take the same amount of steps to get from one tile to another; they cant "jump" tiles to gain a speed advantage.

At the end of the day, it's a "tile-based" game that runs in real-time. There's a global turn clock and creatures have a "steps allowed per turn" value that allows them to run or walk.

The "facing" animation will get a working-over eventually to make it so they dont flick between left-right-left-right facing when they're moving horizontal/vertical; I'll make it so they just always face directly towards their destination tile. You can already see it working that way when two people are shooting at eachother and I'm really happy with that aesthetic.

Jewel
May 2, 2009

Mug posted:

It's a design decision to ensure creatures always take the same amount of steps to get from one tile to another; they cant "jump" tiles to gain a speed advantage.

At the end of the day, it's a "tile-based" game that runs in real-time. There's a global turn clock and creatures have a "steps allowed per turn" value that allows them to run or walk.

Don't engines like this usually just count moving diagonal as being 1.4 weighted (roughly diagonal distance sqrt(1^2 + 1^2)) to balance that out? Not saying you have to do it, since your engine seems to work fine as is, but it might look more natural if you can end up fitting diagonals in eventually.

Edit: vvv Me either, really! Every game does stuff differently anywho, it's all up to you in the end, and that's what's great about gamedev! Also yeah, that's a huge side to it.

Jewel fucked around with this message at 09:33 on Sep 1, 2012

Mug
Apr 26, 2005

Jewel posted:

Don't engines like this usually just count moving diagonal as being 1.4 weighted (roughly diagonal distance sqrt(1^2 + 1^2)) to balance that out? Not saying you have to do it, since your engine seems to work fine as is, but it might look more natural if you can end up fitting diagonals in eventually.

I don't really know what usually gets done. I also don't wanna draw more frames of movement animation, heh.

Lord Humongus
Apr 10, 2009

ice ice baby :toot:
Hey guys Im making a game on stencyl, and I was just wondering what you thought of the way I handled lighting in this game.

http://www.stencyl.com/game/play/14192

It's just black squares hiding/showing themselves, I really dont know if it looks good or not.

Don Mega
Nov 26, 2005
I watched a little of your coding video and I am amazed you can stare at that awful blue background for hours! Obviously it works for you, I am just busting your balls.

Adbot
ADBOT LOVES YOU

roomforthetuna
Mar 22, 2005

I don't need to know anything about virii! My CUSTOM PROGRAM keeps me protected! It's not like they'll try to come in through the Internet or something!

Lord Humongus posted:

Hey guys Im making a game on stencyl, and I was just wondering what you thought of the way I handled lighting in this game.

http://www.stencyl.com/game/play/14192

It's just black squares hiding/showing themselves, I really dont know if it looks good or not.
It doesn't look good. It would be significantly improved by having it fade to semitransparent black squares on the thresholds - as it is it doesn't look like lighting at all, it looks like junk appearing and disappearing.

Also I don't know what the light is supposed to be doing but it's not tracking the mouse very well.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply