News:

Don't forget to visit the main site! There's lots of helpful docs, patches, and more!

Main Menu

Super Metroid - Unity Game engine

Started by Moderndayzero, June 18, 2015, 09:50:44 PM

Previous topic - Next topic

Moderndayzero

Update: 8-14-15

Up to date GFX... lots of work.



Again, I welcome all feedback.

Zero One

Pretty good start to this. I'd say the Metroid feels a bit floaty and a bit slippery, but it'd be interesting to see where this goes.

Good luck!

Moderndayzero

Thank you,

Note: This is not the game I will be making."Though that would be a neat concept playing from the Metroid's point of view." I just used a Metroid to have something to move around that required less scripting. I will try to complete a standalone game of this while i learn Unity.

I hope all of you enjoy the progress and I appreciate any/all feed back.

Planning to work on this over the weekend and will replace the links above with the revised content for what i have completed on Sunday evening or Monday at some point.
There will be a Time stamp on each update.

Regards,

~MDZ

Lunaria

Shouldn't this be in the misc forum? It's not really super metroid related per say.

How are you configuring up the graphics OP? Everything looks a bit low res here.

Grimlock

How was the learning curve with Unity?  I've been pretty interested in learning more about it.

ChathSuaco

Quote from: Grimlock on June 20, 2015, 08:03:09 PM
How was the learning curve with Unity?  I've been pretty interested in learning more about it.
I'll jump in on this one.
I've built a handful of small projects in Unity, and it depends on what you intend to do with it. If you just want to build something with pre-made assets, the client is very good at handling that, complete with the ability to edit variables. Kinda feeds back into this engine, as the physics could be edited to a rather fine margin.

Now... If you want to build something more complex, say, an engine to mimic Super Metroid. Depending on coding experience, the learning curve will either hit you like a train while you learn how to code in C# or java. Otherwise, the curve is just getting used to learning how objects and scripts stack.
So in short: If you know how to code, it's a comfortable hill that you wouldn't want to bike up. If you don't, it's a brick wall until you get a hang of the coding, then it's a hill.

Moderndayzero

#6
Using unity for now just because i know my way around it a bit more and i am still making up sprites and other resources but, i will be doing this in the unreal engine.

That all said. i have tried to make high rez sprite sets and yea... takes way too long and so far what i have is not turning out quite like i had wanted. not bad for my 1st crack at it but still not even close to what i was shooting for. So, i have a question for those who have used unity or unreal. when importing 16bit sprites they appear small and blury in unity. is there a way to correct this? i have messed with some of the compression settings and nothing seems to work as of yet.

thank you.

CrAzY

Find your player's spritesheet, click it. In the Inspector on the right, you will see "[spritesheet name] Import Settings."

Using the following should give you adequate results...

Texture Type - Sprite
Sprite Mode - Multiple
Pixels Per Unit - 100
Don't generate mipmaps
Filter Mode - Bilinear
Max Size - 4096
Format - 16 bits

If it is still blurry, could be something else.

Zero One

It's very simple to do in Unreal. Simply import it like a regular texture, and then double-click it to open it and you should get a screen like this:



As you can see, this screenshot is a little blurry. Over in the Details panel on the right, underneath Texture, select the dropdown box next to Filter and select "Nearest". That'll change your blurry texture into:

this nice, unblurred image. Simply convert to a sprite from there. Blurriness is all about the filtering. If it's set to bilinear, trilinear or anything else, it's probably not what you want. I believe there is a way to set the default to be Nearest by changing the Project Settings, but I haven't found it yet.

Moderndayzero

Thank you i will look into this. Seeing as you seem to be familiar with Unity or Unreal i pose a question. Is it easier to just draw the entire room in photo shop so you are only working with 1 asset for each room then you can use small blocks and set the 2D collision to those? seems like it would be a lot easier  than moving a ton of tiles around. if you ever need to tweak the room just edit it in photo shop and re-apply.

your thoughts?

Mon732

Having the whole room as a single image would work.
If you needed something like a bomb block you could leave that space blank in the level and maybe place the bomb block in unity. Then have some code to check if it was bombed.

Also as ZeroOne said, the filter is what causes the blurriness.
Nearest Neighbour looks at the pixel next to the current pixel to decide what colour it should be. This is best for sprites.
Bilinear uses an equation to calculate the colour based on the colours around it. This is better for realistic textures.
Trilinear is like Bilinear but more complex.

Zero One

Unreal Engine 4.8 introduces the Tile Map asset. Instead of drawing your level in Photoshop, you'd draw your level in a Tile Map and place the Tile Map in your world, where a Tile Map could represent anything from a room to your entire play area. You'd simply import your room graphics texture into UE (and change the settings so it fixes the blur), convert it into Tile Sheet, edit the Tile Sheet properties to define the tile width and tile height, open up a new Tile Map and import your Tile Sheet into the Tile Map and start drawing. Tile Maps also support adding more layers, so you can have it look as simple or as complex as you like. I'm not sure how you'd handle objects like the bomb block. I would imagine that, instead of using a bomb block graphic from your Tile Sheet, you'd place an actual bomb block sprite, which could have a simple Blueprint attached to delete it when it's bombed.


This may interest you: a Paper2D tutorial made by Epic Games. It's currently a two-parter, though I imagine they're planning on doing more. The two tutorials also use Unreal Engine 4.7, but basically everything that he does, you can follow along with in 4.8 quite easily, or just grab the 4.7 version from the Epic Launcher. The only downside is that, since these are using 4.7, the Tile Map isn't covered, but there's plenty of stuff online about it.


Personally, I wouldn't want to do it in Photoshop. I'd much rather use this Tile Map setup.

Moderndayzero

Thank you, I have watched a lot of those videos already. I am going this weekend to pick up some books on C# for when the time comes. As for now, I will just continue drawing in all of my assets for the project. It took almost 2 Weeks to make up the Tile set for the picture above. I have kept everything in layers so placing them in Unity / Unreal should be a snap. I like the "only having 4 assets" to make up an entire room. Hidden paths or blocks that can be destroyed could be done with sprites. All in all I should be working with maybe 5-20+ assets per room "including enemies and character". Seems to be a lot more manageable. I could be wrong though, time will tell.

Thank you for any and all feedback. Please let me know what you think. Opinions spark ideas!

~MDZ

Quietus

One suggestion I'd make would be to take the tiles you're using, and try to create some intermediate tiles, to enable you to make larger groupings or structures. You wouldn't have to alter any of the edges of your rooms, but could see a lot more variation, especially when you have large areas where the individual, square tiles are very obviously outlined.

Moderndayzero

Could you by chance provide an example? i think i know what your talking about but visuals would help.

i assume you are talking about the black voided areas?

Quietus

No, the actual tiles that comprise the room boundaries. :^_^:

Here's a quick mockup to show what I'm getting at. The tiles on the bottom half are how a lot of your tiles appear, and it can look very tesellated, but mixing in just a few blending tiles can allow you a lot more freedom to make things appear less uniform, like the top half of this room:

Zero One

Just to quickly point out, if you want to take the Unreal path, a book on C++ would be handy. Either that, or Blueprint everything, which is also quite doable.

The mocked room looks really well done!

Moderndayzero

#17
Quietus,

I have made up some tiles as the example you provided. Were you thinking that for the backgrounds or the main tiles you walk on? also I was planning on making larger tiles just not yet. I wanted this to have that retro Metroid feel.



Zero One,

I saw that. a book on C++ is what i will need to pick up. I plan on using the Unreal Engine but have not yet started learning the in's and out's of it. I believe for now I will continue on building up my assets.  "Tile sets, Sprites, map, HUD, etc...

Once i have completed enough "roughly 90%" Then I will start using Unreal.

My current thought as to how i plan on going about this for most rooms is as follows.

Background layer 1 - Stationary
Background layer 2 - Panning
Main layer - Tile sets character / enemies react to.
Foreground Layer 1 - Stationary with Main layer " character and enemies go behind this layer"
Foreground layer 2 - like the above but panning.

I like being able to make everything in photo shop. Making each room with several layers "saved"  so when the time comes to use the engine I should have less assets to work with.
I.E.

3-5 x assets for the room layout.
??? x enemy sprites
1 x main character
??? x event tiles "bomb blocks, doors, etc...
??? x anything else i may want to add. 

Keep the feedback coming. It's most welcome ^^

~MDZ


Quietus

For your question, prehaps you could make separate blends for the two layers, with larger structures reserved for the background, and smaller structures for the actual room?

Moderndayzero

So its back to just me. i will try to keep new content / progress coming. Please leave some feedback as it helps me think of new ideas or look at things from a different perspective.

As always, thank you.

MDZ~

MetroidMst

Add bubbles. Lots of bubbles. And make them glow. Every. Single. Color.

Moderndayzero

I did not make them glow, though I can. Didn't spend too much time on these and plan on revisiting them.
Let me know what you think.



MetroidMst

Those are nice clusters of bubbles, though the more hexagonal shape is a little strange. (Especially on the larger ones.) Not that it is a bad thing, just a little different.

Moderndayzero

Drank a few beers, listened to some Manson and came up with this. "you were right, those few did look out of place."


MetroidMst

If somebody doesn't appreciate the amount of bubblicious sydneysauce in that image, they aren't real people.