Planet shader


You must be logged in to obtain assets


The Not-sphere

An easy to use shader that transforms your 3D game onto the surface of a planet! It can easily be used for already existing games where the world is "flat"; as in it can have elevation, but the gameplay primarily takes place on the xy-plane. The shader will morph your entire room into a planet. You don't have to deal with any heavy 3D math! The planet created by this shader has no poles, and is as such not your standard 3D sphere - thus the name! The code is well commented, and there are two examples of usage included; a demo room where different effects are shown off, and a simple room that shows how little code is required to make it work.


  • No heavy 3D math required - simply apply the shader, and your game is transformed into a planet!
  • This shader does require knowledge about how to use Gamemaker's 3D, and how to use shaders.
  • As the world is morphed on a per-vertex basis, more vertices will give a smoother result.
  • The further 3D objects are away from z = 0, the more morphed they will appear. This is especially evident if you jump high up with the player character in the demo room.
  • The shader also comes with a few scripts to make its usage simpler. These scripts are made primarily for 3rd person games. They let you easily set a highly customizable projection, or send the necessary common uniforms to the shader. Uniforms that are unique to one shader (for example in sh_notsphere_diffuse in the demo) will still have to be sent over manually.

Update 3.1.2 - Added more comments to the code - Moved the demo camera to a better position

End User Licence Agreement (EULA).

Age Rating: 4+


GMS1 - Version 3.2.0. Published August 30, 2014

Loading, please wait

Package contents

Loading, please wait

What is the issue?

Loading, please wait