In this lesson, you will learn how to create a Sci Fi Panel Generator for use in game engines such as Unity. This will be a high level tool that artists can use to quickly turn designs created in Adobe Photoshop into 3D panels for use in-game. As a technical artist, you will learn how you can build this kind of tool using Houdini's node-based workflow including a range of specially designed GameDev Tools published by SideFX. 


All the nodes and networks will then get wrapped up into a Houdini Digital Asset or HDA which can be loaded in Unity using the Houdini Engine plugin. Once the tool is ready, game levels can be quickly set up using using this generator tool and some source Photoshop designs to create quality game art.


INTRODUCTION

This overview shows you the finished asset and its various controls work in both Houdini and in Unity. You will learn what kinds of parameters are available and how you can turn a Photoshop file with multiple layers into a quality game-ready model.

Length: 04:25

PART 1 | MODELING THE PANEL

In this lesson, you will start with the Trace PSD GameDev tool then use that to start modeling the various layers of the panel. You will learn how to place the parts in relation to each other and will make sure you set up your nodes procedurally so they can handle different PSD files with unique designs.

Length: 33:43

PART 2 | ADDING DETAIL

Now that the main body of the panel is ready, you will learn how to use more layers in the PSD file to add details such as grooves or to place existing pieces of detailed geometry. You will then set up both high and low resolution versions of your panel to allow for texture baking in the next video.

Length: 37:29

PART 3 | CREATING THE DIGITAL ASSET

It is now time to wrap up the nodes and networks into a Houdini Digital Asset or HDA which becomes a high level tool for artists to work with. You will promote parameters from key nodes to build an interface for the tool and then you will test it in Unity to show that it is ready for level builders to use to lay out the game.

Length: 37:21

NOTE: The controls available on the Houdini Digital Asset are available in the game editor. The results are baked when the game is compiled and the procedural controls are not available at runtime.


CREATED BY

SIMON VERSTRAETE

Simon is a tech Artist that loves building procedural tools and assets. By adding more and more procedural approaches to his workflow, he is able to build 3D models with speed and flexibility. During his studies at Digital Arts and Entertainment, he taught himself how to work with Houdini. After his studies, he started working on Ary and the Secret of Seasons at eXiin. Currently he is a Houdini freelancer and focuses on creating procedural content.

More from Simon Verstraete

COMMENTS

  • spieluhr_x 9 months ago  | 

    Just in case someone face the same problem as me, you need to update your GameDev Tools to a non production build (1.203 worked for me).

    Otherwise you might not see the "layers to extract" option within the trace PSD file.

  • David Inlines 9 months ago  | 

    Wow! Good Work! Its very nice!!

  • bazuka 8 months, 4 weeks ago  | 

    Great work mate

  • BlissettDMB 8 months, 3 weeks ago  | 

    The geo generation works for Me, but the Normal Map baking is not working.
    I've upgraded to 17.5.391 and the GameDevTools to version 1.203.
    Does this work with the Indie edition or is there an additional step that I'm missing.
    This is a great tool. Any help would be greatly appreciated.

    • BlissettDMB 8 months, 3 weeks ago  | 

      Here is a video showing issue:

      https://youtu.be/3GgqN48sBJo

      Again, the geo is being generated, but the Normal Bake only generates a blue texture with no elevation in the Normal Map.

      • BlissettDMB 8 months, 3 weeks ago  | 

        Now using the simple baker and able to get the normal's exported.

        • Siver 8 months, 3 weeks ago  | 

          In case you still wanna use the Maps baker (which I can recommend), here is a temporary fix.
          https://imgur.com/a/hMdELnn
          You place null nodes for the high and the low poly, then freeze the null node (which will store the data in the null nodes)

  • Kjetil 8 months, 3 weeks ago  | 

    Hello. I am new to Houdini. Is it possible to complete this tutorial with Apprentice version, combining Houdini & UE4/Unity?

    • Siver 8 months, 3 weeks ago  | 

      The apprentice version doesn't include the plugin for the game engines. You will need to look at the Indie license, if you fully wanna use it. You could still build the tool but not open it in game engines.
      More about Indie license here https://www.sidefx.com/buy/#houdini-indie
      Or you can get also one on steam https://store.steampowered.com/app/502570/Houdini_Indie/

      • Kjetil 8 months, 3 weeks ago  | 

        Thank you for reply and this tutorial. It is a gift to get this sort of insight.

  • BlissettDMB 8 months, 3 weeks ago  | 

    Super Awesome!!! The workaround works a treat.

    *****************************************************
    *********PLEASE FOLLOW [Siver] Fix!!!**********
    *****************************************************
    Walkthrouh:- https://youtu.be/aAwqX1ryGZw

  • gabhpe 6 months, 2 weeks ago  | 

    Hello Simon Verstraete.
    Great tutorial.
    I have one doubt. In the introduction video, you have a variation of this tool to make a modular kit. How can I separate the meshes in unity to select the parts individually?
    Thanks !!!

    • Siver 6 months, 1 week ago  | 

      Hey, Thanks.
      The variation of the modular kit was made in Houdini and separated in Houdini as well. You could build a system that export different piece of the HDA in Unity.
      But to keep it simple for the video I just separated it in Houdini and textured it in Substance.

  • ALDE 3 months, 1 week ago  | 

    Hey Simon,
    I am working in Houdini 18.0.348
    I have got a problem or a question. I am trying to reproduce your tutorial, but I get stuck where you introduce the second loop for each connected pieces. Everything works fine until I try to copy the bevelled pieces on to the provided points, for some reason the bevelled pieces shift on the Z-axis, so they do not match the pipes any more.

  • goingbananas 2 months, 4 weeks ago  | 

    Hello Simon. I'm using Houdini v18.0.426.
    When working on the blue line that cuts across the top panel, the Polybevel after the Boolean shatter node deforms the nearby rectangle (from Layer 3). This is happening before the bevel even touches that geometry. The Polybevel from my version is different than the one in your video. Your project files don't exhibit this since it uses the old Polybevel node. Any tips on how to fix this in the newer version?

    • Siver 2 months, 3 weeks ago  | 

      Hey, Using the new Polybevel should give you the same results. Make sure to export the A-B seams in the boolean and use them in the bevel. Or other possibility that can happen is that there is not enough room for a bevel.

  • MrFlamey 2 months, 1 week ago  | 

    I made it through the tutorial and am now a lot more comfortable using Houdini. Thanks so much for providing these tutorials for Houdini users to learn from.

    I had a couple of problems that really slowed me down:
    1. The boolean shatter result seemed to flag the abseams incorrectly when using the connected pieces loop. All of the pieces that were not touched by the boolean had the abseams group added and the bevel result was a mess. I had to remove the loop to get an acceptable result, but in this case, the bevel couldn't be adjusted much before I started to get artefacts.
    2. I couldn't get the lattice to have 50 divisions in z because Houdini told me it was too many. I'm not sure if this is a limitation of the current version of the lattice node, or if there was some other issue holding it back. I spent quite a long time trying to increase it, but to no avail.

    In the end, I did finish the tutorial, and learned a lot in the process. The resulting low poly mesh was not particularly great, and didn't look great in Houdini, but it looks like your result with normal map applied was decent in Unity. It's an interesting technique, and maybe would produce really nice output with a remesher instead of polyreduce/decimate. Still, it seems like your result was a bit better than mine :D

Please log in to leave a comment.