Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 26 Feb 2009
Online Last Active Today, 11:33 AM

#5308578 How to compute % of target visibility/cover?

Posted by on 29 August 2016 - 08:10 PM

Like I said in my other topic:




Even going beyond the tactics game style, how one go about computing how much of someones volume/silhouete is visible from a point of view?


It sounds very complex to me, makes me think that most tactics games probably cheat a lot with this, like making very limited level design, or not taking much into consideration...


I started thinking on this with the idea of having spheres characters moving on world made of AABBs, but the boxes not needing to be aligned with anything, and can be positioned freely also in vertical, so I dont think its possible to have some hackish way of doing this?


The simplest way I though of is shooting a lot of minimum size projectils against the target in a way that it would hit the target evenly all over its circle silhouete, and see how much of the projectiles actually hit..


The other way is image based: render the target only in a unique color, count its pixels, render all obstacles, depth enable, ortho camera (on the pos of the gun barrel), and count the pixels of the target again?


Am I overthinking this? How youd do it?

#5279248 Learning Animation/Illustration for Video Game Art Questions

Posted by on 03 March 2016 - 06:45 AM

Dude, no school will make you learn art, the thing school might do to you is make you procrastinate less and practice more, which is what you need to get good at art. Today theres the internet, the only thing school will do for you that you cant do alone is networking with ppl in the area you like (which IS in fact important).


Plus, this style of art (the one you posted) requires more time to produce, GENERALLY a sane person wont do both programming and art aiming to THAT kind of art, cause it take a big deal of time to produce. For example, skull girls took 4 years to get done (if I remember correctly), and had a team of animators. But its not impossible, if I again remember correctly, theres a japanese guy who made a fight game in MUGEN and he did all of the fighting girls characters, all super high pro quality, pretty insane (sorry, I dont remember the name).


Dust an Elysian Tail was made by one guy, he was into animation first, than took a book on xna and made his game.


Its possible, but ppl who make both programming and art aim to more simple stuff, like Spelunky, Cave Story. Its more realistic. Take that into consideration.


Now you already 19, if you have such interest in art, how is that you didnt keep practicing? I never saw anyone getting good at art fast, most good artist I know kept drawing from a very young age and never stopped. I cant guess how much time, but keep in mind it CAN take more than 20 years. Maybe it can be impossible for some ppl?


Why dont you aim for building a team? Its my impression that most indies have 1 artist, 1 programmer and a freelancer sound artist.



If you actually enjoy drawing, than it will never be a waste of time or a bad decision, have fun and keep improving together with your programming skills (try to find an artist to make games while youre not satisfied with your own art). Dont go for something that might be just struggle for years and yet you might end giving up on it.

#5273973 2d platformer level design.

Posted by on 02 February 2016 - 06:55 PM

My tip is separate art from design entirely as a first step.

Sketch the level design using just shapes to describe things, like platforms, moving platforms, itens etc, enemies, etc.


After you have the level with all challenges or wathever, you think on how the art can meet the level.


The thing is, when you think on the level with the art already in mind, you will end up limiting yourself in design choices (pushing the design to meet your art choice)..except design is always more important.


For example, imagine youre designing a forest level, you might be inclined to not put any moving platforms, cause what the hell would those be lore wise? If you already have the design (moving platforms already there), and require it to be a forest, you will MAKE the art work the best way you can..So it will either be platforms with magical rocks on the bottom, will be platforms with strings and monkeys pulling it on the bg, whatever..The artist is required to make it work...


The things is, good art might mask a boring level, but if you sketch a level only with shapes, ONLY the fun of the level will be your guide.


I also recommend making a list of stuff you want on your game, and then when sketching your level use it as a library. Things like jump springs, breakable blocks, collectibles, pushable blocks, stairs, elevators, moving platforms, hidden passages..


I never finished a platformer, but I have started many =_=, its my fave genre. My tips are based on my own opinion. 

#5261250 How hard it is to live from games as indie developer?

Posted by on 09 November 2015 - 05:57 PM

A game in two months? Alone? Not even a skilled person. Unless you want to be the next flappy bird guy.

Check what ppl do in a month:



Check tigsources devlog forums, look for topics of already successful games to get some idea. By successful  I dont even mean games that paid themselves, but that got released on steam or got some market coverage.

#5253035 What do gamers prefer, graphics or gameplay

Posted by on 19 September 2015 - 08:31 AM

No mention of dark souls? The graphics are shit, even the most hardcore fans agrees its not up to its gameplay.

#5252111 How elaborate does your design document get?

Posted by on 13 September 2015 - 08:13 PM

Google docs so anyone can see the last version always. For a team of 1 or 2 I dont think you need anything else..a excel table on google docs with the milestones if you want to keep track of what everyone is doing (pending, doing, finished).


Keep it informal if its just for the team. Place your idea in short sentences like notes, try to have the first sections be just small sentences describing the core aspects, try to have lots of images, like concepts and mockups, this is the fast way to explain the game, to pass the idea.

Then later comes the detailed explanation, which will basically take the small sentences subject and go in detail. Have it properly and clearly indexed in titles and subtitles in the most logical way possible.

For a prototype,1 or 2 team, anything too deep is a waste of time or may become even an excuse to not start or give up half way. 


something like

- your game in a sentence

- main aspects in notes

- platform(s)

- player possible actions in notes

- mockups

- concepts

(keep in mind why you want to play the game when writing those)


then the detailed


-game "loop", the sequence of actions the player can do, this can be storyboard like

-gameplay detailed



those arent a list of everything that will be on the game, its stupid to think you will get that right at first, just put your main ideas and explain so other person besides you get what you mean.


-style, mood and technical stuff you are limited to(resolution(s), scales, file types)

-if you dont have an artist to sketch stuff here, grab references from the internet of what youre imagining




-story as presented for the player(time events)

Dont fall for the trap of having a million page just for the lore...fuck the lore, this is not a book, have it at the end to not get in the way if it gets too big.Explain it in steps, do not get artsy fartsy.



The design doc will later be getting more detailed when the team members start to work on each aspect. Ppl should check to see if everyone agrees with what is being made, if there isnt any unwanted deviation.



Thats how I like it. 

#5194679 The "action" systems that 2D game frameworks all now have...

Posted by on 25 November 2014 - 04:10 PM

I used it in cocos (long ago) because I didnt find any other means to control the stuff (like animations) tightly.

I hated it, it requires a bunch of loading code to prepare the actions, and when you need to interrupt it, cancel in the middle or something, it gets even more ugly. ( I dont remember very well thou)


In my engine, I have chainable tasks, the purpose of those (from my POV of course) is to use it when you need to execute some code that would be a rare if case in the game loop. Basically, having a loop full of IFs that almost never execute is ugly/poor code, so the tasks works perfectly for stuff like this, since in the game loop is just a tasker.update(delta); call. So I use it as a temporary code executer.


One of my tasks is a "delegate task", that basically executes a delegate till it returns false, making it very easy to create new tasks without having to derive a new class (just create a new method and plug on the delegate).


Chaining tasks is not as cute as I though it would be when I implemented it. Reusing tasks by reordering the chain is not so obvious and generally I end up with a few small tasks that are almost the same. 


The fact that I prohibit myself from allocate memory at run time also requires pre initializing all tasks, with is also a pain in the ass. The task machine works with shared pointers so I basically initialize a bunch shared pointers with noop deleters.

#5187930 Steam OS survey - reflection of reality?

Posted by on 18 October 2014 - 11:02 PM

cheaper: linux or pirate win, win, mac

easier to use: win, mac, linux


Doesnt that pretty much explains everything?


Plus, is commom knowledge that windows is the gamer platform for home computers. One does not by a mac "to play games".

#5158024 GetAsyncKeyState() Alt key problem

Posted by on 04 June 2014 - 12:47 AM

8 in binary is 1000, means it have the left most bit set, getasynk.. returns a bitmask where each bit means something, check the docs in msdn.

If the left bit is set, the key is down.

#5155918 I need ideas for a game...

Posted by on 25 May 2014 - 01:06 PM

Think on what you most like. (theme, ambient, climax, style, etc.)

Think on what is there that you generally like to play, think on why you like it, think on why those arent enough for your satisfaction anymore.

Think on something that would fulfill what those things already there arent fulfilling. Somethink youd like to play but doesnt exist.

Elaborate on that. Create mockupts, than prototypes. Dont lie to yourself, youre the one who will play it, do you really want to play it?

If fail, start again (think on why it sucks, compare to existing things, than think in another thing), if its going great, keep improving.


The problem you can face is only being able to think on projects that are too big (next gen mmo). This is a problem, if you cant see the charm of small but really charming and stylish projects, I dont know how youd go about it.

"Think on what you most like. (theme, ambient, climax, style, etc.)" -> try to apply those on small scale projects, maybe think on retro or gameboyish style games.

If theres isnt anything like youre imagining out there, good! Youre about to go original ;).  Its hard, cause theres no references, but than remember to not lie to yourself ("do you want to play it?")

#5153413 The acceptance of gold loot in RPGs

Posted by on 13 May 2014 - 04:06 PM

I play fallout new vegas in nightmare mode, where even the ammunition weights, and I say it contributes to immersion a lot.  Theres no currency, you can trade every junk for..junk (cause bottle caps are the money), and even pre war money are just like more junk.. Killing animals will just give you (not allways) his pieces, like wings, poison gland or skin, I love that game <3.


What you carry is a major gameplay element, you have to make clever choices, and even your character stats goes in there. You need to resolve between food, money and distance between your next destiny.


You need to think what works better for the game your doing, not for a general golden rule. If your games have that survival aspect focus than having a snake dropping money will kill immersion IMO.

#5153234 Perfectionism and Programmer's Block

Posted by on 13 May 2014 - 12:25 AM

I recommend getting into a game jam to forcefully push you in the 'productive' mind set, its really a revealing experience: no time for over thinking, only for vomiting working code as fast as you can ( you do with what you got, your current experience level, instead of thinking in the best way possible you do in the best way you can). Its good to show yourself how much you can pull of.


The scary part is that that "method", at least in my experience, is faster for progressing than the "over thinking till you got the handsome solution". I find that you learn more by trying more in short times with lots of mistakes and redoing than spending too  much time trying doing it perfect in the first try. Its really a mind set thing, generally in the over thinking mindset you go slow, stop, analyse, you dont give another step before be sure, etc..


In the "vomiting way", you make shit work, than you realise what makes it shit, clean it, still working, figure out some bugs, redo it..its more experience, faster. And its more rewarding cause you actually get something to toy with (cause its already working even when its shit)

#5148264 Why is the first spritesheet laid out like this? Seems harder to read the spr...

Posted by on 19 April 2014 - 07:36 PM

UVs are necessary for "sampling" (grabbing texture pixels on shaders) textures on both direct3D and openGL.


Theres no way around it, its not to save memory, its for accessing the texture pixels (more correctly, texels, as pixels are on the screen).


So if the software/lib you used where using one of those apis,  they are handling this for you.


Note that theres no "2D" concept on those apis, GPUs are rasterizers that read vertex data to shaders, shaders will work on that data and output to render targets (textures displayed on the screen).


The "3D" or "2D" is all on the api users responsibility, its all about transforming points with matrices. Those points are rasterized to the screen accordingly with the topology specified on the api (lines, triangles lists, etc.).


So, if theyr necessary for 2D game programming depends on what level* you are, if you using those apis directly you certainly need it. If not, dont worry, its being handle for you.

(*level as in low-level / high-level, not as in beginner / advanced )




Now, to draw things without those apis these days, I dont know if its even possible..Even windows GDI uses direcX underlying. So I dont know...Im curious, how Flash applications are drawn?? o.o anyone knows? Where are the vectors translated to pixels?





Crazy, flash is pretty damn fast considering the rendering madness it have to go trough

#5148186 Why is the first spritesheet laid out like this? Seems harder to read the spr...

Posted by on 19 April 2014 - 11:54 AM


'frame' uv rect to a file.

What is a uv? 


Also, what do you mean by atlas? Do you mean a map?

UVs are the texture coordinates, from 0.0 (top left) to 1.1 (bottom right). Is how you get a portion of the texture.

An uv is specified for each vertex of the mesh you want to draw. Is how you map a texture to a mesh.

In the case of a sprite, you have a quad (or 2 triangles), means 4 points, so you have 4 points and 4 uv coords.


A texture atlas is a texture inception ;D. When you take a lots of texture and merge into a single texture (like a tileset or sprite sheet). This is good for performance as changing texture is expensive, so if you manage to have all images possible into a single texture, you will never remove the texture from the GPU memory, win \o/.

#5148179 Why is the first spritesheet laid out like this? Seems harder to read the spr...

Posted by on 19 April 2014 - 11:30 AM

The second one arent even rects, its insane, as each sprite would need to be a different mesh.


I have my own texture tool where I can pack a bunch of sprites into a single atlas, it saves each 'frame' uv rect to a file. So the order they show up are random.


Note that for animated sprites theres a problem with trimming transparent spaces, as you need to keep the frames from a single animation relative, so if in a frame the character is with arms opened and in the other closed, the frame would bounce as the position of the character wouldnt change, but the frames have different sizes. (generally ppl let transparent areas untouched, with no trimming. In my engine each animation frame have an offset to compensate, so my texture tool do the trimming and computes this offset needed to keep the animation correct, based on the amount removed from each side).