• 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.

GAF Indie Game Development Thread 2: High Res Work for Low Res Pay

Status
Not open for further replies.
Hi guys!
This is my first post in here. I'm very proud of the work you guys do, so that's why I started to work on something on my own.
I'm using UE4 as my engine, and 3DS Max for modeling, but now I have a problem with collisions.
I have the following object

I want my main character to walk around the spiral.
When I import it into UE4, the collisions aren't that precise, even if I regenate them with the highest parameters.
Is there a right and easy way to get that result?

Pieces of collision need to be convex, with no concave parts. That means, no dents. Read this:
https://docs.unrealengine.com/latest/INT/Engine/Content/FBX/StaticMeshes/#collision

For models that are concave, you'll have to make a copy of this model (follow the UCX naming conventions described in the URL above), and split the copy into separate parts, ideally none of them intersecting, and all of them 100% convex. There are scripts that can do the latter for you automatically. Like this one. http://www.scriptspot.com/3ds-max/scripts/convex-hull

Here's an example from my own game Lolly Joe. The top is the original house model that you see in-game. The bottom is the simplified collision mesh I made manually.
collision%20hulls%20example.png

I took the original house model and split it into separate parts. None of them intersect or overlap. Every single piece is disconnected from each other, and is also 100% convex. The chimney had to be split into 2 parts to make that possible.

There's a lazier, less performance-friendly alternative to all of this. Just open up the mesh in UE4, scroll down in the settings until you see "Collision Complexity." Choose "Use Complex Collision as Simple." This enables per-poly collision, which means every single face/triangle on the original mesh is used as collision instead of a more optimized, simpler collision mesh. This is not the ideal method, but you can get away with it if the model is low-poly enough. I've seen some indies do this to save time, but you should avoid it whenever you can because it can lead to bugs like falling through the floor. The engine has to work a lot harder to calculate collision with this method, and anything moving very very fast will often just go straight through the collision instead of being blocked by it.

Also, protip: never use the collision auto-generated by the engine. Making collision manually is always the way to go. The auto-generated collision only works OK for anything that is inherently already convex in shape. Like a tennis ball - perfectly smooth with no holes or dents. Your mountain is too ridged to ever work with auto-generated collision.
 

Banjo

Member
Pieces of collision need to be convex, with no concave parts. That means, no dents. Read this:
https://docs.unrealengine.com/latest/INT/Engine/Content/FBX/StaticMeshes/#collision

For models that are concave, you'll have to make a copy of this model (follow the UCX naming conventions described in the URL above), and split the copy into separate parts, ideally none of them intersecting, and all of them 100% convex. There are scripts that can do the latter for you automatically. Like this one. http://www.scriptspot.com/3ds-max/scripts/convex-hull

Here's an example from my own game Lolly Joe. The top is the original house model that you see in-game. The bottom is the simplified collision mesh I made manually.
collision%20hulls%20example.png

I took the original house model and split it into separate parts. None of them intersect or overlap. Every single piece is disconnected from each other, and is also 100% convex. The chimney had to be split into 2 parts to make that possible.

There's a lazier, less performance-friendly alternative to all of this. Just open up the mesh in UE4, scroll down in the settings until you see "Collision Complexity." Choose "Use Complex Collision as Simple." This enables per-poly collision, which means every single face/triangle on the original mesh is used as collision instead of a more optimized, simpler collision mesh. This is not the ideal method, but you can get away with it if the model is low-poly enough. I've seen some indies do this to save time, but you should avoid it whenever you can because it can lead to bugs like falling through the floor. The engine has to work a lot harder to calculate collision with this method, and anything moving very very fast will often just go straight through the collision instead of being blocked by it.

Also, protip: never use the collision auto-generated by the engine. Making collision manually is always the way to go. The auto-generated collision only works OK for anything that is inherently already concave in shape. Like a tennis ball - perfectly smooth with no holes or dents. Your mountain is too ridged to ever work with auto-generated collision.

Hey, thanks for the fast answer!
I was trying to divide the mesh on convex parts, but I took a lot of time and it wasn't that good. But I will try it. Thanks!
 
Trying to write my first "fragment shader" code for an image effect. Mind you, it's Unity 5.3, so some parts are probably slightly different, but I guess it couldn't hurt to ask. I've never written a shader before. (I added a new script with a Material and OnRenderTarget() to make use of it, so yeah, that part works.)

0. If I were to do things to only pixels rendered on the screen, I just need to have all the code in the frag() part, no?

Everything else is now irrelevant since I've figured out exactly how to make the pixels be whatever I like, wherever I want. The Unity documents are a bit weird in this respect, and Visual Studio won't help with shader code...

But I finally did it!
 

anteevy

Member
Oh boy, Road to Ballhalla's release date suddenly got so close. Will probably announce it next week. I wish I had unlimited time to add all the cool bonus features I had planned, but I guess at some point you just have to stop adding stuff and release the game.
 

F-Pina

Member
I´m changing some details of the spritesand have reached a point where I need some external advice...so, which one do you like more?

With inner borders (A):
9YjNRnP.gif


Without inner borders (B):
BmQdQSB.gif


Thin and inner borders (A):
aAlY7St.png


Thick outside border (C):
P7gHCyl.png


I´m leaning towards thin and inner borders (A). I´ve seen that that´s the way most pixel art games do it as it´s clearer to see the limbs of the character and convey movement. What do you guys think?

You need to test this out with your backgrounds.
The decision rests on how they are drawn. Do they have thick outlines as well or are they just colors? What is the pallete chosen for the backgrounds? Etc.
 

ephemeral

Member
Ehm, Jesus? That's cute, man!

I agree but I'd prefer if the ribbons weren't that jagged. Doesn't fit the rest of the character.

Been spending the last couple of days rewriting code yet again, it was really hard to read and it looked like a huge mess - some methods had hundreds of lines of code. Well worth the time invested to rewrite it but here's hoping I won't have to rewrite large amount of my scripts many more times :).
 
EDIT: Nevermind, I think I give up. I seem to be causing some weird interpolation no matter what I do. Perhaps a different approach is needed.

Was trying to write an image effect fragment shader that basically drops the display resolution to the target amount of rows of pixels on the "screen". (Don't worry, it's optional.)

This seems to work, but there seems to be odd blurring at the left and bottom edges even at an integer factor of the target "resolution" (640x480, for example)...

Code follows.

Code:
Shader "ScreenEffects/DownRes"
{
	Properties
	{
		_MainTex ("Texture", 2D) = "white" {}
	}
	SubShader
	{
		// No culling or depth
		Cull Off ZWrite Off ZTest Always

		Pass
		{
			CGPROGRAM
			#pragma vertex vert
			#pragma fragment frag
			
			#include "UnityCG.cginc"

			struct appdata
			{
				float4 vertex : POSITION;
				float2 uv : TEXCOORD0;
			};

			struct v2f
			{
				float2 uv : TEXCOORD0;
				float4 vertex : SV_POSITION;
			};

			v2f vert (appdata v)
			{
				v2f o;
				o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
				o.uv = v.uv;
				return o;
			}
			
			sampler2D _MainTex;

			fixed4 frag (v2f i) : SV_Target
			{
				uint TargetRows = 240;

				fixed4 col = tex2D(_MainTex, i.uv);
				
				uint CurrentScreenColumn = (uint)(i.uv.x * _ScreenParams.x); // Column (x) of the pixel
				uint CurrentScreenRow = (uint)(i.uv.y * _ScreenParams.y); // Row (y) of the pixel

				float factor = ((float)_ScreenParams.y / TargetRows); // How big is a target pixel on the display? Square pixels only by y

				uint ActualColumn = floor(CurrentScreenColumn / factor); // Actual column on the target grid
				uint ActualRow = floor(CurrentScreenRow / factor); // Actual row on the target grid

				v2f p = i;

				p.uv.x = (ActualColumn* factor) / (float)(_ScreenParams.x - 1);
				p.uv.y = (ActualRow * factor) / (float)(_ScreenParams.y - 1);
					
				col = tex2D(_MainTex, p.uv);
				
				return col;
			}
			ENDCG
		}
	}
}
 

Nista

Member
Long time lurker in this thread, always enjoyed seeing all the cool things people are working on.

Our new indie studio of 7 people is launching our first game on ios and android this week, and I'm kinda of at a loss on how to get it anywhere visible on the app stores as a new development with not a lot of money to spend on ads and promotion...

Any advice from those who have braved the chaos of mobile before?

Also once the game is up I'd love if people could play it and give me some feedback. I'm still worried the difficulty tuning isn't quite right! Hard to test it when you have no dedicated QA.
 

Limanima

Member
Hi there. I've been away from this thread for some time, but now I'm working on a new game, so my interest is up again.
I'm developing my engine a little bit more and add simple 3D support (which I'm gonna need for my next game). I have rendering with lighting already working (directional, spot and point lights). It's been a lot of fun and satisfying - when I see things working that is. :)
The engine has become a HUGE project. My next steps are, replace all GLM with my own vector/matrix math, implement more then one light at the same time, implement skin animation. Then I'm off to start working on the game.

Long time lurker in this thread, always enjoyed seeing all the cool things people are working on.

Our new indie studio of 7 people is launching our first game on ios and android this week, and I'm kinda of at a loss on how to get it anywhere visible on the app stores as a new development with not a lot of money to spend on ads and promotion...

Any advice from those who have braved the chaos of mobile before?

Also once the game is up I'd love if people could play it and give me some feedback. I'm still worried the difficulty tuning isn't quite right! Hard to test it when you have no dedicated QA.


I don't have advice for you, but I can tell you about my experience.
I've released two games. One on Windows Phone/iOS (this one is also available on Steam) and one in Android/iOS.

The platform I had most success was on Windows Phone. The game was featured several times in a few countries and had more the 350.000 downloads (no, I'm not rich). The same game on iOS had 500 downloads. Because the market on WP is a fraction of iOS the game got a lot more attention.

The other game, has such ridiculous numbers that I'm not even going to state them.

Note that I haven't made any sort of advertising for none of those games.
 

neko.works

Member
Hey guys!

I've started planning for the upcoming Light Fairytale KickStarter that will happen around this October, and have one important question: Is it possible to make a campaign without any stretch goals? Do you think this will impact it negatively?

The base goal of this KickStarter will be to purchase dev-kits, ratings and paid assets.

Of course, if the campaign is successful, I will use the funds to improve the game, but these additions must add quality or content, and will depend on the funding, time and opportunities.

I don't want to promise things like voice dubbing, and feel obligated to include them, even if I don't find quality partners, or surpass the initial dubbing budget or the required time and postpone the release just for that...

Do you know any successful KickStarter without any stretch goals? Any thoughts?

240.png
 

hampig

Member
Does anyone have any suggestions on what to use to capture gameplay footage? I'm getting ready to work on my games first trailer and need to get some gameplay.
 

Clessidor

Member
Does anyone have any suggestions on what to use to capture gameplay footage? I'm getting ready to work on my games first trailer and need to get some gameplay.

I personally prefer Open Broadcast Software for recording. The software is actually made for streaming, but you can record with it as well. And it's free.
 
How do you guys feel about working on a second project while you do your first? Like a couple of days per month. Just to changr things up and stay sharp. Any major drawbacks other than dedicating small amounts of time to the main project?

I feel like I need to stretch my legs some. I enjoy working on MF1 but every once in a while I just want to change the channel.
 
How do you guys feel about working on a second project while you do your first? Like a couple of days per month. Just to changr things up and stay sharp. Any major drawbacks other than dedicating small amounts of time to the main project?

I feel like I need to stretch my legs some. I enjoy working on MF1 but every once in a while I just want to change the channel.

That's essentially what I'm doing with my day job/personal project.

It can be refreshing, but I find the biggest issue is when you become so tired due to the main project that you can't bring yourself to devote time to the side one. It can get a little depressing when the time since you last worked on something starts racking up.

I'd say if you're in the position where you can work on your own game full-time, don't bother with a second. Use your spare time to relax, do something fun. Just takes some time to switch off.
 
All right, since I should take the entire thing from the cool 16-bit effects thread and discuss here now as things are going a bit off-topic (but not entirely so, as it's trying to replicate the effects)

Or use the &-trick if your size is a power of two, i.e. i%j = i&(j-1) if j is
a power of two.

Seems like I won't be able to use this trick as the renderer's resolution is the display resolution, or the window resolution, which are unlikely to have both be powers of 2.

The game is intended to look "correct" at 320x240 and anything larger that isn't narrower than 5:4 or wider than 16:9, though it will look fine at any aspect ratio from 5:4 to 16:9, with a properly expanded view, as well as cameras staying within map bounds.

Thanks, modern game engines and UI design! 640x480 is recommended as a minimum to prevent staring at a postage stamp, by the way ;)

Out of my head...
Guess you have an effect resp. mapping which will distort the screen. When
going over the output screen (a subset of the range of said mapping) while
using the inverse mapping of the given one, then you will find for each pixel
(x,y) on the screen the corresponding pixel in the domain of the mapping, i.e.
in your undistorted image, which, unter said mapping, gets distorted to the
(x,y) position you're currently at.

Nothing new so far.

But now imagine you inverse-map all the boundary points of the screen, then,
given that the inverse mapping is sound in the first place, you will find a
bounded set in the domain. Computing the bounding box of this set of points
will give you the maximal extent you need to render to cover each point of the
screen under the given mapping/distortion.

So for example. Say you already have an image of your rendering of a given
size and you want to have a lens (a faked one, 2d) rolling over said image.
Such a lens only does some radial scaling, basically. However, if the scaling
is large enough, then the inverse mapping will address points outside of your
rendered image with you having to set these pixels black (whatever). But now
the lens has some finite extent on your rendered image. It's a circle, usually.
If you re-project this circle, you will find the extent you need to render
your image at, to address every pixel reached by the lens (by the inverse
mapping).


Edit:
I think we should switch over to the indie thread on this. ;)

Edit II:
Regarding the lens, the inverse mapping of the lens' boundary (depending on
the scaling/magnification factor) may actually turn out to be a pretty huge
region in the domain of the mapping, leading to a huge render target degrading
performance. Hence, either a limit needs to be set for the maximum render
target or the lens' scaling/magnification factor needs to be limited if you
won't have a lens displaying black pixel inside of it. What I wanna say is;
the approach described above won't work without any bounds. However, it all
depends on the mapping.

Though I'm also thinking of an alternative... would it theoretically be possible to make this work if the initial render target actually renders some amount of extra columns to the left and right of the nominal display resolution, and then the visible buffer is just the centre of it? (I didn't quite understand what you were saying there...)

Sorry for ending up kind of messing up the 16-bit thread anyway, but all help is appreciated! It helps in making games feel right.

Also, being trying to do a down-res shader, which I might also make use as a mosaic/pixellation effect, not unlike one of the hardware features that the SNES and GBA had.

I seem to be having trouble fighting an interpolation issue - sometimes it does seem like Unity grabs a pixel on a pixel boundary (like it seems to be getting the average of pixels on columns 0 and 1, for example) and the mosaic blocks end up looking like it's duller than it should be.

I've went and started a rewrite. Wish me luck... this might need me to write it as two shaders, or at least two passes, if only to have it be error-free. I'm still new to this pixel shader thing.

Shader coding seems fun. Seems like I'm LTTP, as DirectX 8.1 hardware have been really old hat by now, let alone the first of the 9 hardware, or anything that can use HLSL... but it's so much fun messing around with pixels!
 

missile

Member
... Though I'm also thinking of an alternative... would it theoretically be possible to make this work if the initial render target actually renders some amount of extra columns to the left and right of the nominal display resolution, and then the visible buffer is just the centre of it? ...
Would also work, i.e. extending the target just a bit. Perhaps it already
suffices for the effect you have/need.

... (I didn't quite understand what you were saying there...) ...
xD Well, I did a pretty good write-up on the basic theory of many screen
distortions effects in here using scaling, lens etc. afterwards as an example
to show how it works in practice. Someone from this thread used it to built a
shield for their game which distorts the scene around it. It's buried in here.
You have to find it!

... I seem to be having trouble fighting an interpolation issue - sometimes it does seem like Unity grabs a pixel on a pixel boundary (like it seems to be getting the average of pixels on columns 0 and 1, for example) and the mosaic blocks end up looking like it's duller than it should be. ...
Don't know about Unity, but depending in the interpolation scheme you may need
the value at column -1, or even -2 for higher order interpolation. Where to
get these values from? There are different strategies; (a) stop interpolation
at column 1, (b) copy column 0 to column -1, (c) set column -1 to black, or
(d) do a so-called extrapolation, i.e. predicting the value at column -1 from
column 0, 1, and 2 for example, assuming that the pixel values close to the
border won't jump that much for the extrapolation to make sense.
 
Would also work, i.e. extending the target just a bit. Perhaps it already
suffices for the effect you have/need.


xD Well, I did a pretty good write-up on the basic theory of many screen
distortions effects in here using scaling, lens etc. afterwards as an example
to show how it works in practice. Someone from this thread used it to built a
shield for their game which distorts the scene around it. It's buried in here.
You have to find it!

Got it. I guess you could say that I'm learning while making use of things I've never used before for now...

Don't know about Unity, but depending in the interpolation scheme you may need
the value at column -1, or even -2 for higher order interpolation. Where to
get these values from? There are different strategies; (a) stop interpolation
at column 1, (b) copy column 0 to column -1, (c) set column -1 to black, or
(d) do a so-called extrapolation, i.e. predicting the value at column -1 from
column 0, 1, and 2 for example, assuming that the pixel values close to the
border won't jump that much for the extrapolation to make sense.

Mmm.

Though now I'm doing the initial downressing thing as two separate shaders for now, since I'm prone to making mistakes. The first portion actually just turns every pixel that are "extra" to the 240p equivalent to black with an alpha of 0. The second portion then uses the resulting image (with coloured pixels AND empty pixels), and if the code sees an empty pixel, it starts walking back on the image until it gets a coloured pixel.

It works in practice, but it screams inefficient, and it breaks under non-integer scaling for now. After fixing it, I'm going to optimize it sooner or later, but for now, having it look correct is all I could wish for - this is a tricky one to get, and I only got it working after... 2 days. It seemed simple!
 

missile

Member
Got it. I guess you could say that I'm learning while making use of things I've never used before for now... ...
That's the best thing which can happen to you. :)

... Though now I'm doing the initial downressing thing as two separate shaders for now, since I'm prone to making mistakes. The first portion actually just turns every pixel that are "extra" to the 240p equivalent to black with an alpha of 0. The second portion then uses the resulting image (with coloured pixels AND empty pixels), and if the code sees an empty pixel, it starts walking back on the image until it gets a coloured pixel.

It works in practice, but it screams inefficient, and it breaks under non-integer scaling for now. After fixing it, I'm going to optimize it sooner or later, but for now, having it look correct is all I could wish for - this is a tricky one to get, and I only got it working after... 2 days. It seemed simple!
And that's the scariest implementation I've ever read about. xD But don't get
me wrong, I myself did thousands of these sort of things, too, and also do
even today at times. It's just the topic which gets more involved whereas the
process stays the same; create -> refine -> create ... ad infinitum.

Regarding scaling; If you want to understand proper integer/non-integer
scaling from the ground up, then don't miss the sections I wrote about
Bresenham's (line drawing) algorithm to scale images! That's pure gold, man!
In that section I show how Bresenham's algorithm is basically a repeated
division algorithm in showing how to get from a repeated division (integer
scaling) over to Bresenham's line drawing algorithm which, as such, can also
be used for scaling. Basically, I re-derived Bresenham's line drawing
algorithm from repeated division. The resulting scaling code is full integer.
It's pretty good/fast (rivals floating-point implementation on my machine). I
further wrote a non-integer scaler (2d) on the same principle, also in full
integer code. These algorithms are the core algorithms for raw scaling without
reverting to the big guns, i.e. 2d scalers using filter kernels of different
orders/sizes etc. The insight behind these raw algorithms are much deeper.
But I will leave this for you to discover! :+

Edit:
Btw; These scaling algorithms will work on any hardware, no matter whether
it's an 8-bit machine, a GPU, or a 10^32-qbit computer. xD
 
That's the best thing which can happen to you. :)


And that's the scariest implementation I've ever read about. xD But don't get
me wrong, I myself did thousands of these sort of things, too, and also do
even today at times. It's just the topic which gets more involved whereas the
process stays the same; create -> refine -> create ... ad infinitum.

Regarding scaling; If you want to understand proper integer/non-integer
scaling from the ground up, then don't miss the sections I wrote about
Bresenham's (line drawing) algorithm to scale images! That's pure gold, man!
In that section I show how Bresenham's algorithm is basically a repeated
division algorithm in showing how to get from a repeated division (integer
scaling) over to Bresenham's line drawing algorithm which, as such, can also
be used for scaling. Basically, I re-derived Bresenham's line drawing
algorithm from repeated division. The resulting scaling code is full integer.
It's pretty good/fast (rivals floating-point implementation on my machine). I
further wrote a non-integer scaler (2d) on the same principle, also in full
integer code. These algorithms are the core algorithms for raw scaling without
reverting to the big guns, i.e. 2d scalers using filter kernels of different
orders/sizes etc. The insight behind these raw algorithms are much deeper.
But I will leave this for you to discover! :+

Integer scaling, hmm? I might need to take a look at how things do, but a bunch of things I'm doing right now will mess up/lose precision when I divide with an integer. Probably going to see what parts I can safely redo with only integer math.

Now, if only I could figure out how to:
1. Create a new RenderTexture in a C# script in case of a display resize and not end up with a massive memory leak (I got burned lol and hit 48GB commit. At least my computer didn't BSOD!)
2. Want to ask about pixel shader code: In what order does Unity gets the pixels processed from a buffer passed into the shader? Left to right, bottom to top seems to be it, but I might be wrong as I'm just guessing.

Unity 5.3 if anyone needs the information
 

missile

Member
Integer scaling, hmm? I might need to take a look at how things do, but a bunch of things I'm doing right now will mess up/lose precision when I divide with an integer. Probably going to see what parts I can safely redo with only integer math. ...
You are blinded by all these floating-point operations. xD The algorithms I'm
talking about never do any divide nor multiplication! ;) From a computational
point of view, they are dead simple.

Edit:
At the time I wrote about these scalers, I created some gifs. One of which
was this one;

3oEjHC8I4WsslaxtU4.gif

classic rotorzoom
(press X to pay respect xD)

The entire zooming going on is done using these integer scalers!
 
^ It's fine to me. At times I take some sideways for a couple of days to come
full circle back again.
I hear that. I've got some ideas I want to proto for the hell of it and probably cannibalize some new code for MF1 in the process.

That's essentially what I'm doing with my day job/personal project.

It can be refreshing, but I find the biggest issue is when you become so tired due to the main project that you can't bring yourself to devote time to the side one. It can get a little depressing when the time since you last worked on something starts racking up.

I'd say if you're in the position where you can work on your own game full-time, don't bother with a second. Use your spare time to relax, do something fun. Just takes some time to switch off.
Well I work on the main project in my spare time as-is. I'd love to work on it full time but can't afford to. Just some days I want to look at something else. I live the project but some days I get home from work tired as hell and want to just sit my brain back and play with other stuff.
 

missile

Member
I hear that. I've got some ideas I want to proto for the hell of it and probably cannibalize some new code for MF1 in the process. ...
Pretty much!


Edit:
I recently finished an online bootcamp for iOS development, and I made a prototype for an adventure game. I'm eventually going to try to turn this into to something bigger, but I've got a pretty good framework right now I think.

https://www.youtube.com/watch?v=z4pIJQR-ynM

Any thoughts?
Online bootcamp. lol Watched a bit. Yes, interesting. But there is a bug in
the graphics, or is it art? ;)
 
Pretty much!


Edit:

Online bootcamp. lol Watched a bit. Yes, interesting. But there is a bug in
the graphics, or is it art? ;)

Online course, program, bootcamp, apprenticeship, whatever you want to call it. Anyways, yes, that is the way the art is supposed to look. I didn't spend as much time on that aspect since my main priority was coding and coming up with a framework that I could reuse in the future. Also learning more about tables and arrays in the process.
 

hampig

Member
Hey guys!

I've started planning for the upcoming Light Fairytale KickStarter that will happen around this October, and have one important question: Is it possible to make a campaign without any stretch goals? Do you think this will impact it negatively?

The base goal of this KickStarter will be to purchase dev-kits, ratings and paid assets.

Of course, if the campaign is successful, I will use the funds to improve the game, but these additions must add quality or content, and will depend on the funding, time and opportunities.

I don't want to promise things like voice dubbing, and feel obligated to include them, even if I don't find quality partners, or surpass the initial dubbing budget or the required time and postpone the release just for that...

Do you know any successful KickStarter without any stretch goals? Any thoughts?

240.png

I was just looking at the Undertale Kickstarter today to help shape mine, and I noticed something that related to what you're asking here. These are the stretch goals. With some exceptions they don't really add any content to the game, and are things that are outside of the game. You could look into similar ideas potentially? Just a thought!

$7500 - Expanded instruction manual
$10000- Macintosh Port by Leon Arnott
$12500 - SECRET BOSS (!?!)
$17500 - Monster designs by Magnolia Porter

$20000 - Patches and Wallpapers!

$25000 - Kickstarter-exclusive Undertale Remixes!!!

✓$32500 - Undertale Alarm Clock App

✓$37500 - Undertale Concept Art

✓$45000 - Undertale Extra Comics and...?


Also, thank you Clessidor, I'll look into OBS tonight!
 
^^ I'm always against game-centric stretch goals. This tells me a dev is willing to short-change the game for sake of Kickstarter. Of course, the intent of KS is to get a jump on a project but I feel the best stretch goals aren't part of a game's content. Just my .02
 
You are blinded by all these floating-point operations. xD The algorithms I'm
talking about never do any divide nor multiplication! ;) From a computational
point of view, they are dead simple.

Edit:
At the time I wrote about these scalers, I created some gifs. One of which
was this one;

3oEjHC8I4WsslaxtU4.gif

classic rotorzoom
(press X to pay respect xD)

The entire zooming going on is done using these integer scalers!

I mean the part about getting the coordinates for the pixel data on the screen. As luck would have it, I need to specify a UV coordinate on the buffer.

They are floating point value ranging 0-1. Probably can't do anything about it.

Anyway...


Now to see how I can optimize it... it's doing it as three separate shaders (egad), but the output is correct.

Time to make it as fast and clean as possible without breaking the output or causing blurring.
 

missile

Member
Online course, program, bootcamp, apprenticeship, whatever you want to call it. Anyways, yes, that is the way the art is supposed to look. I didn't spend as much time on that aspect since my main priority was coding and coming up with a framework that I could reuse in the future. Also learning more about tables and arrays in the process.
Yeah, I thought this would be the case.


I mean the part about getting the coordinates for the pixel data on the screen. As luck would have it, I need to specify a UV coordinate on the buffer.

They are floating point value ranging 0-1. Probably can't do anything about it. ...
Ok. Do as you can.


... Anyway...



Now to see how I can optimize it... it's doing it as three separate shaders (egad), but the output is correct.

Time to make it as fast and clean as possible without breaking the output or causing blurring.
Interesting. How does it look in motion?
 
Interesting. How does it look in motion?

I need to set up some kind of lossless video capture first. :p

But, yeah, it does look like for all intents and purposes the game is running at a really low resolution. Going to make it optional for those that prefer seeing additional detail in the world map and stuff.

Probably might also write a vertical linescroll effect. Since we're working on pixel shaders, it should be basically the normal linescroll effect, except done with the X axis, moving in the Y axis instead.

...

Combining both horizontal and vertical linescroll... well, now I kind of want to see the practical effect now.

(If anyone wonders about the world map, it's just a perspective camera, and making sure that in scripts, Z needs to be taken care of.)
 

Urishizu

Member

I've been working on a project for the last few months and it's finally hit the point where it's ready for Steam Greenlight!

Outbreak on Steam Greenlight

Teaser trailer. (A trailer with extended gameplay is up on the Greenlight page)

Outbreak is a game that I've personally been craving for a long time, but it never seems to materialize. I've always been a fan of classic survival horror games from the 90s. One of the things we ever rarely received were cooperative multiplayer versions of them.

I wanted to take a shot at creating a game that fit those themes (depowering the player, sparse supplies, constrained inventory management, tension) while boasting fun cooperative multiplayer. Outbreak is somewhat atypical as it's a slower-paced game where the difficulty comes from a slow burn that gradually overtakes the player. Initial online playtesting has been quite a bit of fun, so I'm hoping I'm onto something here! :)

Features
  • Online cooperative play for up to 4 players. Offline single-player is also available.
  • 4 different characters with unique skills, weaknesses and attributes.
  • A slower paced survival horror game that emphasizes strategic inventory management.
  • Non-stop tension from always being hunted by the horde while navigating dangerous environments.
  • Hardcore difficulty that scales across difficulty modes and with the number of players in the game.
  • Customizable gamepad and keyboard support. (Including controller vibration!)
  • And much, much more...
The game has reached a point where all of the base mechanics are now implemented and I almost have a complete large-scale campaign mission. There's still a ton more to do (and it's nowhere near finished), but I'm giving Steam Greenlight a chance and see if I can move this project towards an early access game.

You can find trailers and screenshots on the greenlight page. The next one I'm going to make is a multiplayer trailer. Really excited to hear what folks think, especially this is my first attempt at submitting to Steam!
 
Hi GAF !

I'm looking for some help here. Is there a program that can help me create pixel sprtes? Looking to create an 8bit - 16bit looking game, but I'm struggling taking the concept art to pixels. Which program can help me ?
 

missile

Member
Hi there. I've been away from this thread for some time, but now I'm working on a new game, so my interest is up again.
I'm developing my engine a little bit more and add simple 3D support (which I'm gonna need for my next game). I have rendering with lighting already working (directional, spot and point lights). It's been a lot of fun and satisfying - when I see things working that is. :)
The engine has become a HUGE project. My next steps are, replace all GLM with my own vector/matrix math, implement more then one light at the same time, implement skin animation. Then I'm off to start working on the game. ...
Sounds good! Am on a similar track, also working on some lighting and shading.
Well, want to ask, what C/C++ dev environment are you using unter for OSX and
iOS to get your stuff out there?
 

saturnine

Member
hi everyone! I've been mulling over the idea of creating a game for a long time, and I finally decided to give it a try, first by trying my hand at some sprite animation.

ganimationtest2x8yscg.gif
ganimationtest1xbusw2.gif


I'm a beginner, so I'm kinda winging it and I'd love to hear some criticism.
 

Pehesse

Member
hi everyone! I've been mulling over the idea of creating a game for a long time, and I finally decided to give it a try, first by trying my hand at some sprite animation.

ganimationtest2x8yscg.gif
ganimationtest1xbusw2.gif


I'm a beginner, so I'm kinda winging it and I'd love to hear some criticism.

*That's* what you think is beginner sprite animation? I can't wait to see what you'll do later down the line, this is already super impressive stuff! What kind of game is it going to be?

--

On my side: more menu stuff!

PerkyHandmadeAntelope-size_restricted.gif


It's all done, and working in every layout it's needed as far as I can tell... meaning the "core game" has now officially everything it needs. That's a bit weird to process, to be honest. There is still loads of stuff I want to add, tweak and work with, so release is still a couple of months away, but I've got a complete game on my hands, now... so next, I gotta make it a polished one!
 
It's all done, and working in every layout it's needed as far as I can tell... meaning the "core game" has now officially everything it needs. That's a bit weird to process, to be honest. There is still loads of stuff I want to add, tweak and work with, so release is still a couple of months away, but I've got a complete game on my hands, now... so next, I gotta make it a polished one!

Man your game really is looking great, did you think about sending it to the Super Best Friends Play's channel?
This looks it'd be just the right kind of game they'd like to make a video of when it comes out !
 

saturnine

Member
*That's* what you think is beginner sprite animation? I can't wait to see what you'll do later down the line, this is already super impressive stuff! What kind of game is it going to be?

Thanks, this means a lot coming from someone with such impressive animation work as you!

I say beginner because I'm really unsure about the result so far. I like it, but I fear the movements might be too exaggerated and busy. I'm also still learning when it comes to picking a good color palette and shading. (for this character I simply pillaged Robo's palette from Chrono Trigger ahah)

It's going to be a turn-based rpg inspired by the snes and ps1 era jrpgs, which is why I'm trying to create lively sprites to counterbalance the inherent stillness of the genre.
 
hi everyone! I've been mulling over the idea of creating a game for a long time, and I finally decided to give it a try, first by trying my hand at some sprite animation.

ganimationtest2x8yscg.gif
ganimationtest1xbusw2.gif


I'm a beginner, so I'm kinda winging it and I'd love to hear some criticism.

Dude that's really awesome for supposedly "beginner" work.

Do you have an art background? I won't believe you if you say no.
 

Pehesse

Member
Man your game really is looking great, did you think about sending it to the Super Best Friends Play's channel?
This looks it'd be just the right kind of game they'd like to make a video of when it comes out !

Thanks a lot! And as a matter of fact, I did contact them! But they didn't reply to any of my mails. Maybe if members of their audience expressed interest in watching them cover the game, they'd be more inclined to do it? Hint hint! But seriously, I don't know. Marketing and exposure is hell (there's an article on Kotaku about it from the POV of the Brigador guys). I'm trying everything I can, but at some point, it basically boils down to luck, or... who knows what!

Thanks, this means a lot coming from someone with such impressive animation work as you!

I say beginner because I'm really unsure about the result so far. I like it, but I fear the movements might be too exaggerated and busy. I'm also still learning when it comes to picking a good color palette and shading. (for this character I simply pillaged Robo's palette from Chrono Trigger ahah)

It's going to be a turn-based rpg inspired by the snes and ps1 era jrpgs, which is why I'm trying to create lively sprites to counterbalance the inherent stillness of the genre.


Your animations look better than mine when I started out working on Honey, which was a training project to learn 2d animation so I'd say you're off to a great start :-D You've got good poses and a nice rhythm already, and the bouciness is cool. If I'm being honest, I don't know if I'd recommend a JRPG as a "first project" as this genre is pretty intricate - as a solo dev, I simply can't see any type of rpg in less than a few years, so that's a long term commitment already without considering any other dev aspect - but as far as the art is concerned, you seem to have it pretty much covered from the get go! Excited to see what you're going to do and how your project develops! All in all: good luck, and keep posting :-D
 

saturnine

Member
Dude that's really awesome for supposedly "beginner" work.

Do you have an art background? I won't believe you if you say no.

I used to draw a lot (of terrible manga inspired crap) until high school, but that was ten years ago. Started again last year and asked for some anatomy and animation tips from an animator friend, but he's not versed at all in sprite art so I decided to ask for some criticism here.

damn, now I fear I might have come off as a humblebragging ass ahah

Your animations look better than mine when I started out working on Honey, which was a training project to learn 2d animation so I'd say you're off to a great start :-D You've got good poses and a nice rhythm already, and the bouciness is cool. If I'm being honest, I don't know if I'd recommend a JRPG as a "first project" as this genre is pretty intricate - as a solo dev, I simply can't see any type of rpg in less than a few years, so that's a long term commitment already without considering any other dev aspect - but as far as the art is concerned, you seem to have it pretty much covered from the get go! Excited to see what you're going to do and how your project develops! All in all: good luck, and keep posting :-D

Oh I don't intend to do a full scale 40-hour rpg of course. That would be madness, especially as a first project. I just want to start by creating a prototype (something like a single dungeon) and see if I can pull that off at least.
 

chris-013

Member
hi everyone! I've been mulling over the idea of creating a game for a long time, and I finally decided to give it a try, first by trying my hand at some sprite animation.

ganimationtest2x8yscg.gif
ganimationtest1xbusw2.gif


I'm a beginner, so I'm kinda winging it and I'd love to hear some criticism.

Really cool stuff ! I'm a developer and I'm very far from what you draw/animated.
I'm always looking for someone with some "art skills" and if you want help/team up for your prototype/game, you can send me a PM.
 

Jobbs

Banned
hi everyone! I've been mulling over the idea of creating a game for a long time, and I finally decided to give it a try, first by trying my hand at some sprite animation.

ganimationtest2x8yscg.gif
ganimationtest1xbusw2.gif


I'm a beginner, so I'm kinda winging it and I'd love to hear some criticism.

interesting pixel style :) nice work!

keep posting your progress
 
Hey all!

I've been working on this idea for about the past month; it's my first foray into 3D games, and I was wondering if I could share a build of a level I have with you all. It's not meant to be sold or anything; just a little personal project (or perhaps portfolio fodder!) to get more familiar with 3D development in Unity.

Basically the idea is a merger of the building-hopping of Mirror's Edge and the rocket-jumping of Quake.


Since the level I've included isn't the tutorial level (which still needs a little more polish), controls are WASD for movement, Space for jump (you've got a double jump too!), and click to fire your rockets.

I'm definitely not an environmental artist, so my environments (and pretty much everything else!) looks pretty rough; I'm most interested in any mechanical or level design critiques or criticisms that you all might have.

Thanks everyone!

Here's a link: https://www.dropbox.com/s/797vnb77hay6gg5/betabuild1.rar?dl=0
 
Status
Not open for further replies.
Top Bottom