Wednesday, July 18, 2018

Faster Update calls for Unity!

These MonoBehaviour classes allow for batch updating of all components in a single call. KinematicMotor example provided. It's a gentle solution to the 1k update calls problem.

AssetForge Model Optimizer for Unity

A Unity post processor to optimize meshes created with AssetForge. Reduces draw calls, combines meshes and allows batching.

Loose Coupling for your Unity Game Systems

Thursday, March 01, 2018

Thursday, February 22, 2018

A unique ID for your Serialized classes in Unity.



Note, the GetHashCode() method will probably return a unique ID. There is a very remote chance you will get a clashing ID.


Update:After further experiments, I believe this does not work well enough to be generally useful. Unity, we need a new serialization system!

Wednesday, February 21, 2018

Synthesizing Sound Effects in Unity3D.

I have built a Synthesizer for creating sound effects in Unity. It fills a similar niche to SFXR/BFXR, but aims to have more quality and versatility. It's fully modular, with all parameters able to be modulated via the Unity AnimationCurve.

I have called it 'Fizzle'.

Source coming soon.

Wednesday, February 14, 2018

Supercharged Gizmos for your SceneView

This code shows how I use the [DrawGizmo] attribute to create special gizmos for my components, which only appear when you're actually near the component.


Wednesday, January 03, 2018

Allocations in the Unity Editor when using GetComponent.

If you call gameObject.GetComponent, and there is no Collider on that gameObject, null is returned, but you will also see a memory allocation in the Unity profiler.

Why?

The call is actually returning a "fake null" object, so that when you try and use it a custom error message is displayed. This custom error message causes the allocation.

This behaviour is disabled in a build, so you will only ever see it in the editor.

Popular Posts