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

cloudbot

Neo Member
Super random question for everyone... When it comes to memory matching games (like the N-spade mini-game in SMB3), which is a better mechanism for high scores; time to match them all or an accuracy percentage at the end? I'm working on such a game for my iOS App, and I'm torn between which would be a better measurement.

Firstly, you could do both by using a points system instead:

Reward for good time and deduct for mistakes
Code:
(MaxNumSecondsForPoints - NumSecondsTaken) * PointsForTime - NumMistakes * PointsDeductedPerMistake

OR

Reward for good time and reward for good accuracy
Code:
(MaxNumSecondsForPoints - Math.Min(NumSecondsTaken, MaxNumSecondsForPoints )) * PointsForTime + (MaxNumMistakes - Math.Min(NumMistakes, MaxNumMistakes)) * PointsForAccuracy

BUT, those two are definitely a more complex system. It could be more fun due to the increased complexity, but also could be harder to judge where you stand while playing.

So, if you stick to just one metric, I would use time, because making mistakes cost time so you are indirectly measuring that anyway (especially if an animation is involved).
 

Five

Banned
I asked her for a more rough asteroid, as your point makes a lot of sense. Also, the glow won't be staying. I like the more subdued coloring in the first one, but this shape is closer I think.

That shape is a lot better, and I still really like the art.
 
27179-shot0.png


My Ludum Dare 29 Jam game "Where Gods Sleep": http://www.ludumdare.com/compo/ludum-dare-29/?action=preview&uid=27179

I did not actually think I would complete this because I've A. Been sick for months, and B. Actually abandoned my first project in the middle of the jam and started on a COMPLETELY DIFFERENT GAME. So I did this in a day and a half. But well, I completed it and even if I did not have a chance to polish it to my standards it's still a fine effort I think.

Enjoy! I'll make sure to come back and play everyone's Ludum Dare games once I... rest. Hahaha. I think I broke myself.

Great art style! Pretty confusing game, but definitely awesome work for a day and a half. I must admit I'm stuck at the "become one" part though... :(

So here is our Ludum Dare entry. We did the best with what little time we had and problems that popped up. Our programmer busted her ass trying new things out so I have to give it to her for that.

247515287c2f1120f32e035585ad8254.jpg


http://www.ludumdare.com/compo/ludum-dare-29/?action=preview&uid=37036

Valuable lessons learned and I hope we can do a lot better next time.

Nice work. It lacks some polish at the moment (completely understandable of course) but I could see it being developed into something quite fun. Great music too!

Time to go back into user mode. :)

Ghost Song gameplay video is up. I decided against a tightly edited video, and instead wanted to show the game what it's actually like as one continuous take.

I've also finally added the game to Greenlight.

Steam Greenlight

Kickstarter Update

Youtube link

Let me know what you think, and I am aware there are currently a few ugly placeholder sounds and a couple of minor sound implementation issues (a few blips/sound slop). Please cut me a bit of slack on those, the sound implementation will be ironed out in the future.

Looking fantastic. This game seems like it will be everything I hoped for. :)
 

daedalius

Member
Here are a few new things

This for rpgmakerweb's 'volcano dungeon' tileset


This was for a friend of mine's band reunion tour, he got a pretty good deal


This is for a Dota 2 skin, their 'marketing' image, I painted over their 3d model and did the background


I'm available for work, so just shoot me a PM or email
 

-Winnie-

Member
Either I suck, or this is quite a tough little game.
Are you planing a Vita version? I think that would control well.

Haha it's okay, the game is pretty tricky. Stick with it, though!

It is on Unity, so I've definitely considered a Vita version, but currently it seems like only the PlayStation Mobile platform is an option. I'm not really sure how to go about submitting for the standard PlayStation Store if we did do it.
 

bumpkin

Member
Firstly, you could do both by using a points system instead:

Reward for good time and deduct for mistakes
Code:
(MaxNumSecondsForPoints - NumSecondsTaken) * PointsForTime - NumMistakes * PointsDeductedPerMistake

OR

Reward for good time and reward for good accuracy
Code:
(MaxNumSecondsForPoints - Math.Min(NumSecondsTaken, MaxNumSecondsForPoints )) * PointsForTime + (MaxNumMistakes - Math.Min(NumMistakes, MaxNumMistakes)) * PointsForAccuracy

BUT, those two are definitely a more complex system. It could be more fun due to the increased complexity, but also could be harder to judge where you stand while playing.

So, if you stick to just one metric, I would use time, because making mistakes cost time so you are indirectly measuring that anyway (especially if an animation is involved).
Those are actually good suggestions I hadn't considered. Thanks for the insight!

The memory match game is going to be something pretty small, really just a side activity within an otherwise informational App. It's going to have the content on the cards you flip/match fit the theme. It's actually one of five or six simple mini-games I'm hoping to put together. I'm going to be integrating with Game Center for the first time, leaderboards and achievements are kind of par for the course. I just want to use them in a semi-meaningful (and hopefully fun) way.
 

lashman

Steam-GAF's Official Ambassador to Gaming-GAF
hey guys,

I remember some of you were asking about that bloom & dirty lens thing I posted last week .... so just wanted to let you know it's now live in the Unity Asset Store if any of you are interested :) here's the link

just as a reminder:
9b0802fe-5257-4f59-b80b-0588de9b2039_scaled.jpg
 

Anustart

Member
hey guys,

I remember some of you were asking about that bloom & dirty lens thing I posted last week .... so just wanted to let you know it's now live in the Unity Asset Store if any of you are interested :) here's the link

just as a reminder:
9b0802fe-5257-4f59-b80b-0588de9b2039_scaled.jpg

That looks really good. How much is it? I'm on mobile and asset store making my phone cry.
 

Jobbs

Banned
I was hoping to get some guidance from you guys in terms of how much memory useage (using task manager readings) is appropriate in a windows stand alone 2D game like mine?

I am trying to figure out ways to optimize what I have and plan to be more efficient with how I do new things going forward, and it'd be nice to have a good target number. I noticed Noogy's game seems to be 500 megs or less (if I recall) at any given time. Is that an ideal target?
 
I was hoping to get some guidance from you guys in terms of how much memory useage (using task manager readings) is appropriate in a windows stand alone 2D game like mine?

I am trying to figure out ways to optimize what I have and plan to be more efficient with how I do new things going forward, and it'd be nice to have a good target number. I noticed Noogy's game seems to be 500 megs or less (if I recall) at any given time. Is that an ideal target?

I would say that's about right for a 2D game. I remember most XBLA games being around that big, but there was a limit for a while that got lifted later on. Of course every game is unique.
Nice work. It lacks some polish at the moment (completely understandable of course) but I could see it being developed into something quite fun. Great music too!
Thanks. We were just talking about maybe making a metroidvania out of it or something. That won't be for a while though if we do because of Bomb Runner. It was fun though, so I'd like to do these short little projects again sometime.
 

DSix

Banned
I have a question for everyone who got approved on GreenLight:
Do you gain the ability to publish any game, or do you absolutely have to publish that one game that got greenlighted and only that one?

I might have Proxy Blade that will be greenlit soon, and I will absolutely make that game for Steam, but I was wondering if it could also be a ticket to publish my other ongoing project as well. Would I have to go through greenlight all over again, or wait till Proxy Blade is released first?

I need an answer so that I can already begin to redirect my development efforts in one way or another.
 
I was hoping to get some guidance from you guys in terms of how much memory useage (using task manager readings) is appropriate in a windows stand alone 2D game like mine?

I am trying to figure out ways to optimize what I have and plan to be more efficient with how I do new things going forward, and it'd be nice to have a good target number. I noticed Noogy's game seems to be 500 megs or less (if I recall) at any given time. Is that an ideal target?

It's hard to say without knowing how much the player can tell is loaded at once. From what I've seen of your game, it seems like areas aren't too small, so off the top of my head, I'd shoot for around 500mb, since that's pretty decent.

The thing you'd want to avoid is, say, having a game with only one screen loaded at a time that takes up more than 500mb. I'd say anything under 1 gig is fair game, and if it's under 500mb nobody will bat an eye.

As for optimizing, I don't know what format you're using for art and such, so take this with a grain of salt.

1. I tend to use PNGs, since their file size is decent, and full transparency is nice. Targas have transparency too, but I just find them annoying.

2. Decent file compression will go a long, long way in a 2D game. My new favorite way to compress PNGs is TinyPNG.

3. If you're using texture atlases, remember that while possibly gaining performance, you might be eating up extra memory. If your atlas is, say, 1024x1024 and you're only using half or a third of it, those empty pixels are still loaded into memory. A lot of atlas creator programs can create kind of wasteful atlases, so be careful with that.
 

Ashodin

Member
I was hoping to get some guidance from you guys in terms of how much memory useage (using task manager readings) is appropriate in a windows stand alone 2D game like mine?

I am trying to figure out ways to optimize what I have and plan to be more efficient with how I do new things going forward, and it'd be nice to have a good target number. I noticed Noogy's game seems to be 500 megs or less (if I recall) at any given time. Is that an ideal target?

That's actually what I shoot for for Apexicon as well. Below 500 is a great target, the smaller the better!
 
Not much to go on, but my girlfriend whipped up some art to test some styles, and I'm really digging this look. I know it's just a single asteroid, but any thoughts? I'm liking it, but she's having doubts.

2XVCF1E.png

it is quite funny, I saw a lot of asteroid images from NASA and European agency and to tell you the truth nothing looks like what I think is an asteroid :) so at the end, anything that has rocks of any form is an asteroid but somehow I have a hard time trying to draw one myself too
 

missile

Member
Time to go back into user mode. :)

Ghost Song gameplay video is up. I decided against a tightly edited video, and instead wanted to show the game what it's actually like as one continuous take.

I've also finally added the game to Greenlight.

Steam Greenlight

Kickstarter Update

Youtube link

Let me know what you think, and I am aware there are currently a few ugly placeholder sounds and a couple of minor sound implementation issues (a few blips/sound slop). Please cut me a bit of slack on those, the sound implementation will be ironed out in the future.
Finally a video which doesn't spoil me by showing the company's name multiple
times, showing awards which say nothing about the game, whatever. Thumbs up!

Well, about the game. The atmosphere is quite good, and I really like the
conversational element, yet the robot could be animated much more esp. while
he is talking (gestures). What I noticed is that the level looks quite too
similar in detail, your handwriting is quite readable here. It's like having
seen a few screens and I can predict how others will look like. The stones
for example look quite too similar in shape. While scrolling one can get the
feeling the stones are standing due to their similar shape. What's needed here
are more cracks and irregularities breaking up the pattern as a whole. Don't
get me wrong. I know that there will be different levels with different looks
whatsoever. But that's not the point. The point is the anticipated symmetry in
the game/level(s), which will become boring over time. Same holds for the
layout of the terrain, ramps, etc., too symmetric, too orthogonal. You need
more slopes so to speak.
 

missile

Member
In The Beginning There Was Dithering

Hah...! :)

Basically, what I'm working on is the following; A method to downscale 24-bit
images to <= 8-bit which doesn't require an expensive color quantization method
(like Median Cut, Octree etc.) for building an optimal color palette, and
which doesn't need to search through the palette to determine the color
required once quantized, yet the method should reproduce images as best as
possible by applying carefully selected colors and dithering techniques that
should rival the optimal solution.

Got some first pictures. Quality isn't that good yet, given just eight colors.
How can this be any good to begin with? xD But wait! Applying some dithering
techniques shows some very promising results...


5L3eHNn.png
Pjz1haU.png

46lhYs3.png
DrrmXQf.png

left: original due to Grimoire Assembly Forge, right: Retro Engine / NG

Not too bad!


But if there are many different colors/shades, one haltfone shade isn't
enough. It breaks down;

pOhYet6.png
OTvWVqM.png

46lhYs3.png
DrrmXQf.png

left: original due to VAMflex, right: Retro Engine / NG


But now look at this....

pOhYet6.png
SzBuj7B.png

46lhYs3.png
FNMrb7l.png

left: original due to VAMflex, right: Retro Engine / NG

I've now used some larger dither patterns to get more halftone shades. The
right image still consists of eight colors only (zoom in if you don't believe
it), and it consumes just an 1/8th of the size of the left one. Best of all,
the reproduction process is independent of the image. This is quite useful for
displaying arbitrary 24-bit videos and 3d realtime graphics on low resolution
devices. :+

The last picture to the right shows that the method is promising. Basically,
it can only get better from here by optimizing the dither patterns and by
carefully constructing a haftone optimized color table which also takes human
vision into account.
 

Noogy

Member
I was hoping to get some guidance from you guys in terms of how much memory useage (using task manager readings) is appropriate in a windows stand alone 2D game like mine?

I am trying to figure out ways to optimize what I have and plan to be more efficient with how I do new things going forward, and it'd be nice to have a good target number. I noticed Noogy's game seems to be 500 megs or less (if I recall) at any given time. Is that an ideal target?

For what it's worth, I've never heard anyone complain about RAM usage for Dust. And despite the hundreds of hours I spent optimizing memory (mainly for the 360 version) I made a big mistake when it came to how music was loaded into memory. I didn't realize that XACT was actually loading the streaming music into memory, which caused more problems than it should have. Again, no complaints on the PC version though.
 

gundalf

Member
hey guys,

I remember some of you were asking about that bloom & dirty lens thing I posted last week .... so just wanted to let you know it's now live in the Unity Asset Store if any of you are interested :) here's the link

just as a reminder:
9b0802fe-5257-4f59-b80b-0588de9b2039_scaled.jpg

Congratulations for being on the "Staff pick" in the Asset Store!
Any discounts for GAF Members? :p
 

lashman

Steam-GAF's Official Ambassador to Gaming-GAF
Congratulations for being on the "Staff pick" in the Asset Store!
Any discounts for GAF Members? :p

haha, thanks man :) I literally just noticed they've chosen it as the staff pick :D
as for the discount - I'm pretty sure we can't set discount only for a group of users :p but who knows - it might be on sale sooner or later :)
 

Lissar

Reluctant Member
Digging the art, nice work!

Love the artstyle, looks great!

Wow, nice!

Thank you so much!

Great art style! Pretty confusing game, but definitely awesome work for a day and a half. I must admit I'm stuck at the "become one" part though... :(

Thanks! Yeah, that is another one of my "clever" puzzles, the solution has to do with the mechanics you've used up until then.


Anyway, after the jam I finally realized I'm getting much better (I've been sick for months) so I'm able to work a bit more again. Playing around with leaf physics, getting ridiculous results:

ibo8wqWpJVtj8B.gif


"She scores!"

i1AsmDI3u6O1z.gif


"Bye bitch."
 

Jobbs

Banned
For what it's worth, I've never heard anyone complain about RAM usage for Dust. And despite the hundreds of hours I spent optimizing memory (mainly for the 360 version) I made a big mistake when it came to how music was loaded into memory. I didn't realize that XACT was actually loading the streaming music into memory, which caused more problems than it should have. Again, no complaints on the PC version though.

Honestly, I'm kind of in awe of how low your memory usage is considering all those frames Dust has and how big your environment graphics appear to be, not to mention all the audio. It's something I didn't really appreciate until trying to do this kind of thing myself.

Finally a video which doesn't spoil me by showing the company's name multiple
times, showing awards which say nothing about the game, whatever. Thumbs up!

Thank you, and I agree, it's nice to be able to express my taste in gameplay videos by doing it the way I'd do it. The way the environment looks is a source of constant consternation, because I'm trapped between all these different forces pulling on me in different directions --- The look/feel, the technical considerations, the "how much time is this gonna take me to draw?" considerations, and the practical gameplay mechanic considerations. I know it's cliche, but I'm pretty tormented by the game and the art in particular. Maybe that's what it takes to make anything good. XD Your missile-style feedback, is, as ever, greatly valued. :D
 

missile

Member
Look's beautiful, the art style I mean. Btw; What's the game about?


... Thank you, and I agree, it's nice to be able to express my taste in gameplay videos by doing it the way I'd do it. The way the environment looks is a source of constant consternation, because I'm trapped between all these different forces pulling on me in different directions --- The look/feel, the technical considerations, the "how much time is this gonna take me to draw?" considerations, and the practical gameplay mechanic considerations. I know it's cliche, but I'm pretty tormented by the game and the art in particular. Maybe that's what it takes to make anything good. XD Your missile-style feedback, is, as ever, greatly valued. :D
Balancing the whole thing by just one person is the hard part, indeed.
 

EDarkness

Member
I've only just started to get the ball rolling on my social media stuff, but I'm happy to share my thoughts so far.

Comparing yourself to Nintendo or Sony is probably not the best way to start. Those companies have to protect their corporate image fiercely. When they post something informal, it usually makes headlines.
In order to best succeed in the small space, I think its best to use your weaknesses as strengths. So, if you're small, that can mean you don't have to protect a corporate image. Posting updates, screenshots and music snips are all great ways to keep people informed and interested. However, don't be afraid to post a picture of your messy desk with your game running on your PC with a caption like "Hard days work, but finally got [feature] working!". It helps the kind people who would want to follow a small indie developer relate to you.
Your personality, or character, is something you can promote that Nintendo or Sony can't, because they're a large faceless corporation. Also, post often. I try and post something new at least once a week. I'd like to post more often, but some weeks having something interesting to talk about isn't easy.

Thanks for the info. I've decided to do some little tidbits about the my game and development process on Twitter and use TIGSource and my own website for long posts about everything else. I feel like it'll be a once a week thing or something like that. Your information was quite helpful and I think I have a better idea of where I'm going with this in the coming weeks and months. Heh, learning how to use social media in a meaningful way has been pretty interesting. Everyone seems to get something different out of it.
 

ZehDon

Member
I was hoping to get some guidance from you guys in terms of how much memory useage (using task manager readings) is appropriate in a windows stand alone 2D game like mine?...
electroflame had some great points, and I agree with him in that on PC anything under a gig is perfectly acceptable. I'd like to add some of my own thoughts, though.

In terms of compatibility, obviously smaller is better - but at the end of the day, you need as much memory as you need. Your game features a large number of high frame, full colour, high resolution animations. That's never going to be cheap. The bare basics of simply loading and unloading assets as you need and don't need them should cover you pretty well.

Having said that, aggressive memory management isn't necessarily a good thing unless you're really running into problems. Up to a point, having a consistent memory footprint is more important than having a smaller memory footprint, in terms of smoothing out performance. Assigning and cleaning up memory does more damage than simply leaving it sitting there until its eventually needed, in that regard. I actually removed some of my memory stuff, and just let C# and XNA handle it for me, because I lost frames to the garbage collector.
With a custom memory management solution, you could be more aggressive and not worry about the garbage collector - or ignore it if you're not using a managed language/framework. Of course, even aggressive management doesn't lower the memory requirement for your game to function by a lot - spikes will still happen, and it will still crash if the memory isn't there for them.

Off topic: this kind of stuff is why I really like working on older hardware platforms, like mobile and handhelds. I remember John Carmack saying he loved working on mobile, because it pushed him creatively when dealing with the hardware. Couldn't agree more. Anyone else find this?
 

Jobbs

Banned
electroflame had some great points, and I agree with him in that on PC anything under a gig is perfectly acceptable. I'd like to add some of my own thoughts, though.

while I'm far from an expert at anything technical, I've learned enough now to at least sort of see that there's this whole artform involved when it comes to memory management.

I was trying out some things now, and I sectioned off a few areas and made them not load into memory until you're close to them. okay, great, but when I get to the point where the new area has to load, I get about a half second (or a little less) pause. that's something. so then I'm thinking, well, maybe I'll be more tactful about where I put these loads, so that when the pause happens it's as least irritating as possible.
 

amanset

Member
while I'm far from an expert at anything technical, I've learned enough now to at least sort of see that there's this whole artform involved when it comes to memory management.

I was trying out some things now, and I sectioned off a few areas and made them not load into memory until you're close to them. okay, great, but when I get to the point where the new area has to load, I get about a half second (or a little less) pause. that's something. so then I'm thinking, well, maybe I'll be more tactful about where I put these loads, so that when the pause happens it's as least irritating as possible.

Which is why the likes of Resident Evil had doors and Metroid Prime had weird tunnels. They distract the user from the loading.
 

missile

Member
...

Off topic: this kind of stuff is why I really like working on older hardware platforms, like mobile and handhelds. I remember John Carmack saying he loved working on mobile, because it pushed him creatively when dealing with the hardware. Couldn't agree more. Anyone else find this?
Mobile, handhelds? Downright ridiculous. They are pretty advanced systems
seen from a BBCmirco which I programmed a couple of weeks ago. And indeed,
it pushes creatively, efficiency, and ingenuity. If anything, I really love
tinkering around with old and restricted hardware. Count me in! :+
 

lashman

Steam-GAF's Official Ambassador to Gaming-GAF
Well you probably have yourself a sale. I'm really unimpressed with the image effects included with Unity Pro.

well, that would definitely be nice :) thanks, man!! ... and yeah - the default image effects included with Unity aren't really that good any more ... and they don't really want to update any of them for some reason
 
My Ludum Dare entry, Jetpack Caverns has been received a lot more positively than I expected.

I also came out of it with two new things I hadn't tried before, but can integrate pretty easily into my framework and other projects: A rumble/screenshake object, and a function that dynamically auto-tiles to replace a tile and set the appropriate borders on adjacent tiles. The latter will take a bit more tweaking to make it agnostic enough to dump into my framework, but the former is basically ready-to-go but can use more features.

So, I'd say it was a pretty successful weekend overall, and certainly my best LD to date, even if I didn't get to do everything I wanted to.

 

Turfster

Member
well, that would definitely be nice :) thanks, man!! ... and yeah - the default image effects included with Unity aren't really that good any more ... and they don't really want to update any of them for some reason

Percentage of sales of asset store replacement shaders outweighs adding them themselves?
Or: don't want to take away sales opportunities from people selling things on the asset store, in a kinder light.
Or: too lazy/focused on other things, in a really unkind light ;)
 

razu

Member
well, that would definitely be nice :) thanks, man!! ... and yeah - the default image effects included with Unity aren't really that good any more ... and they don't really want to update any of them for some reason

One would imagine they don't want to update them because they take a cut of the ones they sell on the asset store!

Really you're buying the ability to use post effects. You're then free to buy more, or, *shudder*, write your own!! :D
 
electroflame had some great points
Your points are pretty great too. I forgot to mention that a consistent memory footprint is important, especially if you have a not-so-great garbage collector (or none at all, god help you).

while I'm far from an expert at anything technical, I've learned enough now to at least sort of see that there's this whole artform involved when it comes to memory management.
I tend to think of it as being "memory aware". Generally speaking, the golden rule of optimizing still applies here. I'm paraphrasing here, but it's essentially "Optimize once you know you have a problem, and always, always profile to ascertain that you actually have a problem". A lot of times, if you're "optimizing" in the wrong place, what seems like something that will help, actually makes things worse.

I was trying out some things now, and I sectioned off a few areas and made them not load into memory until you're close to them. okay, great, but when I get to the point where the new area has to load, I get about a half second (or a little less) pause. that's something. so then I'm thinking, well, maybe I'll be more tactful about where I put these loads, so that when the pause happens it's as least irritating as possible.
That's where streaming would come into play. In a linear game, streaming is really easy since you know where the player is going, and how far they're allowed to backtrack.

In a more open game, you've got to be clever about it and have some kind of detection method to try and work out ahead of time what the player is doing, since they can backtrack, leave and enter a room over and over, etc. It's not impossible, but it's not as easy as "well, at the end of this corridor I can lock the door behind the player and stream the next corridor".

It's also important to remember that Task Manager is not the end-all-be-all memory monitoring program. It's frequently inaccurate, so before you go whole-hog into memory management, I'd try to see if there's a profiler for your engine (Construct, I think?) to figure out if you have an issue to start with.

Also, just to reiterate, some good compression on images will save you a ton of memory if you're not compressing already. Especially if you use Photoshop, since Photoshop adds tons of useless metadata to image files that balloon the file size. If the compression is good, you won't even be able to tell the difference, while having files that are significantly smaller.
 

Jobbs

Banned
Also, just to reiterate, some good compression on images will save you a ton of memory if you're not compressing already. Especially if you use Photoshop, since Photoshop adds tons of useless metadata to image files that balloon the file size. If the compression is good, you won't even be able to tell the difference, while having files that are significantly smaller.

I find this confusing, because everything I'm told and is evidenced by the numbers is that the data gets loaded into memory in an uncompressed form, so that it doesn't matter what you did do the original files. For instance, my game is under 100 megs in file size on the hard disk as currently, but in memory it's 400, 500, and higher megs, depending on factors.
 

lashman

Steam-GAF's Official Ambassador to Gaming-GAF
Percentage of sales of asset store replacement shaders outweighs adding them themselves?
Or: don't want to take away sales opportunities from people selling things on the asset store, in a kinder light.
Or: too lazy/focused on other things, in a really unkind light ;)

yeah ... you're probably righ ... if I had to guess - I'd say it's the first thing you listed :p because I sure as hell just refuse to believe there aren't any even semi-talented people in there who could make those image effects look at least halfway decent, lol :p

One would imagine they don't want to update them because they take a cut of the ones they sell on the asset store!

Really you're buying the ability to use post effects. You're then free to buy more, or, *shudder*, write your own!! :D

but at least it's extremely easy to write them yourself (as evidenced by the amount of awesome image effects in the asset store) ... oh, wait ...
 
I find this confusing, because everything I'm told and is evidenced by the numbers is that the data gets loaded into memory in an uncompressed form, so that it doesn't matter what you did do the original files. For instance, my game is under 100 megs in file size on the hard disk as currently, but in memory it's 400, 500, and higher megs, depending on factors.

Compression should still help, especially if the compression program (like TinyPNG) converts it from something like a 24-bit PNG file to an 8-bit indexed image.

It is important to note that different image formats behave differently when loaded into memory. PNGs tend to balloon, but in my experience, are still smaller than, say, a JPG (since the PNGs are usually smaller to begin with).

You've also got to remember that there's more in memory than just the images. It could be that you've got a particular object type that's eating up memory, or it could be audio, etc. Profiling would help here.

Also, speaking of audio, for things like voice, sound effects, etc. switching the audio from Stereo to Mono will help a ton. You can do music too, but generally music sounds flat when converted to Mono.
 

klaus

Member
I find this confusing, because everything I'm told and is evidenced by the numbers is that the data gets loaded into memory in an uncompressed form, so that it doesn't matter what you did do the original files. For instance, my game is under 100 megs in file size on the hard disk as currently, but in memory it's 400, 500, and higher megs, depending on factors.

It's important to distinguish between three different types of memory: First, you have the disk memory, then main memory, and finally video memory. File size on disk / download can be compressed the most (lossless or not), that's the place where photoshop files (with lots of metadata) or uncompressed formats like bmp waste a lot of space. Those files have to be loaded into main memory first (but may be removed if too much memory is used). In order to be used / drawn, the textures need to be in video memory (and can typically be removed from main memory while being used) - a typical game engine tries its best to keep all visible textures in video memory, keeps some of the textures in main memory (so they can be quickly moved into video memory if they are needed for drawing), and loads / uncompresses textures from the harddrive to main memory in time for streaming.

I assume that you are optimizing video memory usage, and (from my limited knowledge), you have several possibilities to do so: you can use (lossy) compression formats like DXT, PVRTC etc. that are supported by the GPU, you can decide if you need mipmaps (smaller versions for filtering textures in the distance), and the texture format can be chosen (RGB / RGBA / Alpha only, in combination with how many bits per pixel (32, 24, 16, 8 etc.) are used). Many engines save the textures in full size on the disk, but only load a downscaled version into memory, depending on available space / quality setting. So typically, you want to reduce texture size wherever possible, use compressed formats (that usually have nothing to do with the compression of the files on the harddrive like the jpeg format) where it's not visually disturbing and use as few bits per pixel as possible (e.g. a grayscale alpha mask can be stored in 8 bits (or less) per pixel instead of the whole 32 RGBA bits per pixel), and turn off mipmaps where not needed (e.g. GUI textures).

Edit: I take it some graphics programs allow you to optimize files for GPU friendly formats like PVRTC (or even png, see electroflame's next post), perhaps someone with experience with that can elaborate on "early" optimization..
 
It's important to distinguish between three different types of memory [...]

That was better stated than my post(s). I think mine was a bit confusing, now that I'm reading it back.

I wanted to point out that the reason something like TinyPNG helps with memory isn't because it's compressing the image file, it's also changing it from a 24bit image format, down to an 8bit image format, without losing any noticeable quality. That's where the real savings are.

Texture compression formats like DXT and PVRTC like klaus mentioned are really good ways to save memory, but they do have a noticeable quality impact (especially DXT), so you would want to weigh your options there. Also, it's important to note that those file formats generally have a larger on-disk size, so if you go that route don't freak out if you have a texture that's much bigger than it's non compressed counterpart.
 

Ashodin

Member
Yeah I'm using the TinyPNG plugin for Photoshop to go in, choose the largest image files I have, and convert. It's really saving a lot of space, it's pretty crazy.
 
well, this looks fantastic. best of luck with it!
now i don't know your personal role in the development but how... easy... was this to create? mechanically, i mean. it looks like you're using unity 2D?
my programming skills are basically next to none and i realise an entire game is a stupid goal to set oneself so early but i would definitely like to work up to an SRPG like this. if you programmed it at all, was there any tutorials or advice you looked at or is this all prior knowledge?

Thanks a lot!
I'm actually one of the 2 artists of the project, and so far we're using a in-house modified version of the unity editor to just build the stages of the game, which later exports them for our own engine.
So, sorry, I really can't help you on that.


:D

Welcome over here! Looks great!

Thank you so much! hopefully we'll post more stuff for the upcoming #SSS

It looks awesome, especially the tiles :)

Thanks! I really mean it, we went through a lot of iterations, and we're very happy with the final results.
 

Jobbs

Banned
made further experiments with the camera:

http://gfycat.com/InfamousSecretAsianlion

now you can see that the system is somewhat more like how it works in super metroid, where the camera leads ahead of you, but it transitions when you move rather than just when you turn around, so as not to get "jerky". In my case I'm using some easing to move the camera smoothly towards its target, while its target extends and retracts from the player based on input.

furthermore, dashing causes the camera target to lurch forward faster, so that if you want to move fast, it'll keep up.
 

Ashodin

Member
Love it. Good job making the camera work for you!

In transition from moving story scenes and battles to their own individual layouts. Which means I'll build each individual battle from a template (original battle). Everything will be streamlined from before, so transitions will feel natural.
 
Status
Not open for further replies.
Top Bottom