Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

 
Advanced search

1026758 Posts in 41166 Topics- by 32773 Members - Latest Member: robert.briscoe

July 25, 2014, 03:03:46 PM
TIGSource ForumsDeveloperTutorialsRetro-ifying Unity
Pages: [1]
Print
Author Topic: Retro-ifying Unity  (Read 3322 times)
nihilocrat
Level 10
*****


Full of stars.


View Profile WWW Email
« on: January 15, 2012, 08:01:34 PM »

I have seen a number of Unity games, and make some of my own, which intentionally downsample the visual quality of Unity games to give a retro look reminiscent of the mid-90s or earlier. There are a handful of techniques which might not be immediately obvious which are necessary to achieve the look. I'll list them one-by-one below, and if anyone else knows some techniques, please add them.

Making textures look blocky instead of fuzzy
For every texture, go into its setting and set the "Filter Mode" to "Point". You might also want to set the Texture Type to "Advanced" and disable all mip maps; this is especially important to reproduce the "sparkle" effect when looking at textures from very far away in retro games.

Flat-shading on 3D models
I'm only really familiar with doing this in Wings3D. Select all edges, right-click and go to the "Hardness" option, and select "hard". I believe other modelling programs might use the term "Smoothing Groups" instead of "Hard Edges".

You can do this in Unity itself, too. In the FBXImporter component of an imported mesh prefab, you set Normals to "Calculate" and "Smoothing Angle" to 0.  -overhead

3D models with several solid-colored sections
Technically you can just split the mesh into several submeshes, and color each of those with a separate material. However, this is pretty inefficient for rendering, since each material needs its own draw call, and suddenly a single model takes a lot of draw calls. You could also just color the vertices in your modelling app; this is completely valid, but difficult to adjust if, say, you want to easily change the colors of a model in-game.

The method I use is to create a texture made up of several blocks of solid color. I UV unwrap the model, but I just shrink the coordinates into a little blob and shove them into the color I want that part of the model to be. In-game, I can just change the material (or the texture on the material) to change the color of the model.

Getting a resolution below 640x480, or faking a low resolution while using a higher real resolution
The only method I know requires Pro, which I don't have, I have merely been told how other games have done it. Render the contents of a camera to a low-resolution, point-filtered texture and stretch a GUI Texture using this texture to fill up the entire screen.
« Last Edit: January 21, 2012, 08:02:18 PM by nihilocrat » Logged

Chris Pavia
Level 10
*****


teknobabel42 aquamanscg
View Profile WWW Email
« Reply #1 on: January 16, 2012, 09:25:28 AM »


Getting a resolution below 640x480, or faking a low resolution while using a higher real resolution
The only method I know requires Pro, which I don't have, I have merely been told how other games have done it. Render the contents of a camera to a low-resolution, point-filtered texture and stretch a GUI Texture using this texture to fill up the entire screen.

I had been wondering about this the other day, thanks for the info! Man I need Unity pro...
Logged

overhead
Level 0
***

Bits & Bytes ... Attack!


View Profile WWW Email
« Reply #2 on: January 16, 2012, 01:11:44 PM »

Flat-shading on 3D models
I'm only really familiar with doing this in Wings3D. Select all edges, right-click and go to the "Hardness" option, and select "hard". I believe other modelling programs might use the term "Smoothing Groups" instead of "Hard Edges".

You can do this in Unity itself, too. In the FBXImporter component of an imported mesh prefab, you set Normals to "Calculate" and "Smoothing Angle" to 0.

Regards,
overhead
Logged

Cofounder of Rat King Entertainment, the indie games developer making TRI. And here's my Personal portfolio.
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic