Category Archives: Graphics

Low poly water shader

Edit 2: Check out my newest version: Unipolywater shader

Edit: I’ve added a link to a downloadable version of the shader! Copying the code from this post does crazy stuff to the symbols..

The side tracking specialist strikes again.

I’ve been working on another project lately and ended up in need of low poly flat shaded animated water.

I tried editing the mesh at runtime by script. Using the method mentioned by joni.giuro here:

But when using the standard plane with this script, basically 200 triangles and when you’ve separeted all vertices (600), FPS drops down from 1500 without script to 190 with script applied. If you add more planes or models with more triangles you quickly get to a point where you get 1 FPS. So I needed something else.

That’s when I figured I’d try my luck with shaders.

Tried googling for solutions, but nothing was to be found so I needed to build my own. With no experience in shader programming this proved to be harder than I expected. But fast forward through some horrible looking results to today. Now I’ve gotten to a point where I can take any plane (not having to worry about splitting verts) applying my shader and getting this:

Almost no hit on FPS with fully animated low poly flat shaded water with specular color. And with this solution:

I can add looots of planes with this shader with almost no hit on FPS. Here I’ve added got 30 standard Unity planes with 200 tris each, all animating off into the distance.

Here’s a video of it in motion:

So how is this done, you say?

Code below.

It’s not perfect but it works! F.ex. I’ve left the UV coords in there but don’t need them for this. And I’m not entirely happy with the waves just yet.. But here you go.

Link to downloadable version

Unity WP8 Shadow Problem

This weekend I recieved an update to Unity (v 4.5.4f1) and I decided to try out getting realtime shadows to work on the Windows Phone 8 Version of 3ounce. Since Unity actually claims “shadows on all platforms”, I still haven’t gotten shadows to work for my wp8 builds.. I’ve tried out every quality setting and tried building a simple scene just for testing purposes, but no go.. This really bothers me since I want my game to look the same for Android, iOS and Windows Phone.. What makes it worse is the fact that on the Windows phone Emulator it Works fine! So I’m guessing that some wp8-phone models could pull the shadows off just fine.. But some, including my Lumia 930 can’t handle shadows. What bugs me is the fact that when shadows isn’t working the entire light actually cast a gigantic shadow covering everything within the max shadow distance..


ShadowTest Editor

This is what the scene is supposed to look like (In editor)

ShadowTest wp8

This is what it looks like on my Lumia 930.

ShadowTest wp_emu

And on the Windows Phone Emulator….

I’m not sure if I want to disable shadows for all wp8 or have an option for switching shadows on/off in settings..

We’ll see what I end up With.. but the best thing would be for unity or Microsoft to fix whatever’s causing this..

3ounce all over the place

It’s been a while since my last post, but I’ve also got a lot of work done!

3ounce has changed radically since it was released for Windows Store. The Things I have changed is:

  • New Maze-generating code. Creates “better” Mazes now. Minor changes.
  • New player control. Before I rotated the entire maze at input, while the player was always falling down. This was quite heavy to process when the Mazes got bigger.. So I changed my code, so now you change the direction of gravity instead, which has improved performance very much!
  • New 3D models (Blender) added for levelcubes, pickups, goalmarker, obstacles ++
  • New particle effects upon pickups, Death, and goal.
  • New pickup and goal placement. Through the use of pathfinding algorithms (A*)
  • Added obstacles around the Maze, With the possability to “die” (Move 4 steps back).
  • Alot of other stuff

I’ve also tested my game on Android, and I’m working on testing it on iPhone (need to borrow a Mac).

Here running on PC, Nokia Lumia 930, Samsung Galaxy SIII and Samsung Galaxy Tab 2.

Running on Android

Here’s some recent screenshots of the game (Some things has already changed from this version):

wp_ss_20140831_0008 wp_ss_20140831_0010 1 wp_ss_20140831_0013 wp_ss_20140831_0014 wp_ss_20140831_0015 wp_ss_20140831_0016 wp_ss_20140831_0017 wp_ss_20140831_0018

Windows Phone 8 support

I just got a Nokia Lumia 930, my first Windows Phone 8! My last Windows Phone was a Nokia Lumia 800, and I must say the difference is huge! After I got the new Phone, I wanted to try out how 3ounce would perform om the handset, so I built it for WP8 and what do you know, It played perfectly on the Phone! So I’ve decided to port 3ounce to WP8 before I continue work on Battlemaze. I’m also changing the game quite a bit before releasing.. Already done alot of work on the visuals/GUI.. Some screenshots below. The looks might change more..

wp_ss_20140818_0002 wp_ss_20140818_0003 wp_ss_20140818_0004 wp_ss_20140818_0005v