Dev Blog

Learning Scriptable Objects in Unity

May 6, 2019

Scriptable Objects in Unity

Basic Tutorials

Youtube – Unity3D – Using ScriptableObject for Data architecture / sharing

By: Unity3d College

Youtube – Introduction to Scriptable Objects – Unity 2018 Tutorial

By: Chris’ Tutorials

Youtube – How To Improve Your Game With Scriptable Objects – Unity

By: Dapper Dino – Coding Tutorials

I’m just saving some decent looking tutorials from starting with scriptable objects in Unity. These are something I still haven’t really gotten to in Unity, and I especially want to get a handle on them since they are apparently a useful tool in passing information between scenes using the new scene management approaches in Unity.

More Houdini Modeling Practice Tutorials

May 5, 2019

Houdini Modeling Tutorials

Spider Webs and Sine/Cosine Fun

Youtube – Procedural Spider Web – Houdini Tutorial

By: FX HIVE EVOLUTION

Youtube – [Houdini Tutorial] 0031 Spider Web (Slow version)

By: Junichiro Horikawa

Side FX – FUN WITH VEX | SINE & COSINE

By: ILLUSIONISTICS

These are some more Houdini tutorials that are more focused on modeling. Again, this is just to help me get some ideas for my final Houdini procedural modeling project. These seemed fun and pretty simple so they’re nice examaples to just get a little more practice without setting up for a huge project.

Houdini Modeling Tutorials – Extra Practice

May 3, 2019

Houdini Modeling Tutorials

Basic Modeling for Practice

Youtube – Beginner Houdini Modeling Tutorial | Tire Model

By: CGI Nerd

Youtube – Low Poly Hard Surface Drone Character Houdini Modeling Tutorial

By: CGI Nerd

These two tutorials just cover the full process needed to make two separate models with some variability. These just look like good places to get some practice modeling in Houdini in general, exercising the basics like using a lot of nodes I already know in a new way while learning how to use a few new ones all together. I just want to get a look at a few more ways to approach overall models before deciding on a final project idea for my Houdini procedural modeling class.

Exporting Animation Videos from Houdini

May 2, 2019

Exporting Videos from Houdini

Make Houdini Animations into Videos

Vimeo – My Flower Blooming Animation
Vimeo – Water flowers blossoming in Houdini. Tutorial + project (HIP,comp,ae)

By: Mike Stoliarov

I attempted to get into this large tutorial/project showin in the Water Flowers tutorial. The video is more of a time lapse than a tutorial really, so it’s not the best resource to learn from. However, the video links to a downloadable version of the actual Houdini project itself, so I could use this to learn from.

After getting the project to finally run at all, I was able to follow along with the very first steps in the overall process. They imported some flower assets (petals, centers, stems, etc.), but I just made the petals and central object in Houdini itself. I was able to replicate the interesting point noise that is the foundation of the water effect, and translated it into a way to move color across my flower. After that, I just used similar techniques for using the Bend node to get that “blooming” feel.

Getting a Video File of the Animation

This gave me more issues than I thought it would. Rendering an animation to view in MPlay was straight forward enough, but getting anything out of this was a bit tricky. Initially, after letting all of the frames render out, I was trying to use “Export” and export any video type. There are options for 64 bit Windows, 32 bit, and Quicktime movie, but none of them were doing anything for me. Selected any would say “File saved”, with the path, the name, everything, but nothing actually appeared.

After some searching around, I found that I needed to save out the image sequence first. This can also be done right there in MPlay. After that, you then open the image sequence in MPlay and only THEN can you actually export a video file out. It was the proper export commands I was using earlier, but I just needed to feed in the image sequence first.

This created .avi video files. I was looking to create an .mp4 file as well, but could not find a way to do that in Houdini. I then looked into ways to convert .avi files, but to no avail. I tried an online converter but it kept failing. Then I tried VLC, which has a convert option, but it just kept putting out 1 kb video files with nothing in them.

Pokemon in Unity – Tutorials

April 28, 2019

Making Pokemon in Unity Tutorials

Youtube – Lets Make… Pokemon in Unity! – Episode 1 – Basic Setup World/Character

By: BrainStorm Games

Youtube – Unity Lets Clone a Game [ Pokemon ] – Part 1

By: JesseEtzler

Going off of my recent trend, I’ve just been looking to grab tutorials to make games I loved (or still love) playing as a way to learn more about coding different systems in Unity with C#. I believe the Pokemon games will help get me into some scripts that are very repeatable on a large scale (such as a script that creates a pokemon and its stats), which is something I haven’t gotten into a lot.

Being an RPG game with random encounters, it may also help me work in a system that very consistently moves between two major scene types with the overworld scenes and the battle scenes. These scenes will also give the player very significantly different actions while still carrying information between the two types of scenes.

Ori and the Blind Forest: Building in Unity

April 27, 2019

Mimicing Ori in Unity

Bash Action

Youtube – Ori and the Blind Forest – Game Design Reel

By: James Benson

Youtube – Making Ori Y Bash [Unity C#] (Ori and the Blind Forest) #1

By: Wabble – Unity Tutorials

As a big Ori and the Blind Forest fan, I just wanted to see if I could find some tutorials to put together some of the movement or actions given to the player in Ori. The first video is a cool sample of a lot of the different game mechanics seen in Ori, as both their simple concept version as well as their in game version. This is actually extra helpful as the concept version really simplifies it down to what is really happening and makes it easier to process and disect to replicate.

GPU Instancing in Unity

April 25, 2019

GPU Instancing

Tutorials for Unity

Youtube – GPU Instancing Tutorial (No, Seriously, This Is Easy)

By: Craig Perko

Youtube – [Unity] GPU Instancing Tutorial

By: Blendcraft Creations

Youtube – Unity3D – 2 Minute Tips – Use GPU Instancing to reduce drawcalls when batching won’t

By: Unity3d College

Youtube – GPU Instancer – Features Showcase

By: GurBu Technologies

I am starting a project in class that is potentially looking to instantiate a lot of flower objects in Unity, so I wanted to take a look at GPU instancing and see if this was a practical solution for us if we ended up going down this route. If not, this is still a good opportunity for me to get a taste of working on purposefully passing certain information to the GPU and using it for specific tasks.

The first three videos are direct tutorials showing how to set this up or how to use it, while the last one is an already made asset in the Unity Asset Store showcasing a very strong GPU Instancing heavy asset and some of its capabilities. I think the final one is nice to have to at least show some of the more interesting capabilities this can lead to.

Tower Defense Scene Management Issues

April 25, 2019

Scene Management Solutions

Identifying Issues and Possible Solutions

Scene Conflict
  • There are two scenes that load at the same time that have scripts within them that want to reference scripts within the other or both reference the Logic scene which needs to be updated simultaneously
  • Even though they should ideally be loading at the same time, one is always loading ‘just before the other’
  • This causes the first scene loading to miss its references since the other scene does not exist to it yet when it goes to get those references
  • The second scene loading in does however load its references properly
  • I’ve tested switching the order of loading and the second scene functions properly consistently, while the first scene has errors
Current Issues
  • Level scene loading second to make sure the nodes can get the BuildManager reference
  • However, the Level scene sets the number of lives the player has (LevelPlayerStats passes lives in to the PlayerStats script in the Logic scene)
  • The LevelManager in the Base scene checks the player lives to see if it should end the game
  • Since the Base scene is loading first, it checks and sees there are 0 lives before LevelPlayerStats can set the correct amount of lives for the level
  • This is setting the game to Game Over immediately
Proposed Solutions

Find way to time events: Setup the scene manager system in a way that it makes sure everything is loaded before attempting to setup references. Functionality of the game also needs to wait some time to make sure the newly loaded scenes have time to set the values necessary in the Logic scene before actually starting so they don’t try to work with default values instead.

Move references: Currently the issue is that no matter which scene loads first, there are reference timing issues with one of them. This could be evaded by placing all of the references that should be done first into the same scene and just making sure that scene loads first.

I believe the timing control solution is the better and more powerful solution, as this will help anytime I really need to have multiple interscene references in the future. That is also the much more difficult solution though. I may go with the simpler solution for now just so I can continue experimenting with the more game design heavy concepts of working on the tower defense game and then come back to figure out the stronger solution later.

Houdini Vex

April 23, 2019

Houdini Vex Code

cgWiki – HoudiniVex

As I was working on a chandelier project in Houdini, I needed a lot of help learning the ropes of Vex. In my research I came across this huge resource that was not quite useful at the time, but looked like a really good place to start for some vex tutorials. I want to come back later to this resource to help get a hang of the basics of vex in Houdini.