Jump to content
  • Advertisement

xYaW

Member
  • Content Count

    1
  • Joined

  • Last visited

Community Reputation

484 Neutral

About xYaW

  • Rank
    Newbie

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. What a difference a color makes? Today we're going to talk to you about the LUT Color Correction in 'Immortal Redneck'. It's not as complicated as it sounds. "LUT" stands for "Look Up Texture", the color corrections that you need to do in order to convert your original source to the result you want. Think on a caterpillar that grows in a chrysalis to become a butterfly: The caterpillar is the original version, the butterfly is the version you want to... and LUT is the chrysalis, where the magic happens. For the color correction we used an asset. AMPLIFY COLOR A room, before and after the color correction With Amplify Color we can define and blend the different color profiles (LUTs) in different areas. We can scale the volumes, move them, rotate them and animate them. It's very easy to create new environments with this asset linked to Photoshop, After Effects, Nuke or others. We can alter everything color-related in the picture, from exposure to color curves, and even add a mask to get certain areas outside the modifications. You may be asking yourself how the workflow works with this asset. First, we need to take a screenshot of our game (in this case, 'Immortal Redneck', of course), and then upload it to the image editing program of our choice clicking on "Send screenshot". Now you have to edit your picture and set the colors you want, adjust the saturation, amplify colors, scale the volumes, alter the saturation and the color curves and, when you're happy, export the image again to Unity clicking on "Read preset". Magically, all the colors will be applied because the Asset "read" the changes in the palette of colors and applies them to the video game scene. Of course, sometimes the result may be the one you like, and sometimes it can be too much. But in order to succeed and make the best game possible, you have to try! A room, before and after the color correction There are other assets available and even Unity has its own LUT Color Correction in its standard assets, but we preferred Amplify Color because it allows us to insert volumes and change LUT depending on the volume itself, making a blend between them. If you have some doubts about the process, don't worry: We made a video with a tutorial of an image that we wanted to adjust. Enjoy!
  2. I think we all consider Editor Tools a great and really useful aspect of Unity. Working with it has allowed us to create prototypes really fast and makes a lot easier to build prototypes, to add new objects easily and to assign variables. It's a huge improvement in our work flow. The thing is, as Immortal Redneck grew bigger, we started to needing our own tools and we could use Unity editor to build them fast. We've already written about what assets we'be bought to make our development a little more straight-forwarded, but sometimes there's none for your needs. So, why not making it ourselves? It's not the first time we've built our own tools to improve our workflow, and Immortal Redneck wouldn't be different. So let me show you what we have. Game Design Tool Immortal Redneck is a big game - at least for us. In addition to the amount of development hours, it would require a lot of balancing: there's guns, enemies and skills, so we wanted this task to be as easy and simple as possible. That's why we built this tool, to change things almost on the fly. Right now, we can alter: Global parameters like drop rates and spawn times between enemies Each class statistics (HP, Attack, Defense, etc.) Enemies' stats. In the future, we want to change their global behavior and change when they attack, when the hold, at what distance they start moving... Weapons' damage, range, spread, ammo, recoil... The skill tree's levels, gold rates, statistics it changes... Room Utils We want our game to have a lot of rooms, so we needed to have the capacity to create them fast and well. We coded a few tools to this intention. In first place, we created a menu that looks like ProGrids so we can mix everything. We can duplicate objects in each axys really fast because that's what took us most time in the first days of development. Also, it was excruciatingly boring and repetitive thing for the team to do. There's another tool that allow us to check each asset we've created on a catalogue, and paste what we want into the scene. It's almost automatic and works really well. We can place the asset in the place we are looking at or select something in the scene and replace it with something from the catalogue. This is a really, really fast way to replace a whole floor or wall. RoomScene Inspector Each one of our rooms is a scene due to a optimization requirements. Even though Unity 5.3 has evolved a lot in this matter, it's still kind of hard to work with them in comparison with using prefabs, for example. We decided to work that way, creating various scenes and using a ScriptableObject as a reference for each room. This ScriptableObject has the data of each scene, but we can also use it to open them, add them to Build Settings and more stuff. We work constantly with Custom Inspectors in Unity because of this, and that's why we've extended the default editor and added more options. We've even added a room preview because Unity is not allowing that at the moment and it's something that we need to quickly identify what we are changing in the scene. Create PBR Material Working with PBR (Physically Based Rendering), as we are doing in each asset of our game, requires three textures (Albedo, Mask1 and Normal) every time. This implies that each time we import something into Unity, we have to create a Material for that object and assign the three texture each one at a time. It's not a very taxing process, but when you start adding textures of everything in the game, it takes sometime and gets boring. We coded a little tool that automatically create the material by selecting the three texture on the project. It ended up being one of the most useful tools in our development. MultiCamera Screenshot Most screenshot plugins only let you use one game camera. Since Immortal Redneck uses two - one for the player, another for the weapon - we created our own tool to capture all the cameras we wanted. Once we had it, we made it better with overlay options, so we could add our logo and insert the always necessary 'pre-alpha' title without opening Photoshop. Every promotional screenshot you've seen has been capture with MultiCamera Screenshot. Combine Utils Meshes that use the same materials can be combined in Unity to improve its performance. There's various plugins to do this, but we are using our own tool because it looks better. Again, we took ProGrid's style and created our own window. It looks great and it has a lot of options: creating a group of objects to combine, another one to erase a group, another to combine them and the last one to separate the group. Object Randomizer In order to build the three pyramids of Immortal Redneck, our artists made different rock blocks that they would have to pile to create the pyramids sides. To do this manually would be hard, so we coded a little tool that would take rock lines with little variations. This way, our artists could create as many lines as they wanted and build the pyramid faster without repeating patterns. Later, they made some little changes, but the pyramids were done in a jiffy. Gizmos Unity has a very interesting feature: it merges Gizmos with scripts. Gizmos are conceived to show graphics over the scene so some stuff is easily seen on it. For example, in the room above, we've got gizmos showing spawn positions and interest points for their AI. Red spheres show the enemies avatar so we can see where they'll spawn, while red squares do the same with walking creatures. In a similar fashion, blue spheres represent the flying enemies' interest points and the orange squares on the floor are interest points for the walking ones. At first, it might seem crowded and confusing, but it really helps a lot once you get used to it. Components Clipboard Anyone that's worked with Unity has experienced this: you test the game, you change something, you stop it and then you cry when you realize nothing has been saved. Sometimes, you need to change a value while playing so you see on real time how that affects the game. We coded a script that worked as a clipboard so you copy your values so you can paste them after stopping the game. It's simple and easy to use, and it saved our artists a lot of time.
  3. Hey, there. My name is Guillermo, I'm one of the co-founders of CremaGames, and this is my first post on GameDev.net. After a few friends and gamedevs told me they liked the Unity tools we recommended in the studio devlog, and that I should republish it here, I thought: what the hell, let's try it. So I hope you find the list helpful for your own games, because they are essential for us and Immortal Redneck wouldn't exist without their help I think I can say our new game, Immortal Redneck, is kind of big, but these tools have worked for us in smaller projects, too. Obviously, before trying them, and before paying for them, be sure you need it and that there's no other free or paid alternatives. After all, there's a lot of variety in the world of Unity tools. Anyway, let's get on with it. Behavior Designer Behavior Designer was our choice when we needed a solution to implement Immortal Redneck's AI. It was compatible with other AI solutions, with state machines and with Behavior Tree. Before choosing BD, we tried Rain. It was free, and that was great; but we had lots of efficiency problems. Behavior Designer was a lot more compatible, had official support and we could work with a visual interface, not only with lines of code, which is always welcomed by programmers and artists equally. A* Pathfinding We wanted enemies to move around scenes in their own, different patterns. Unity's default navigation system didn't let us move a navmesh once it was generated into a scene, so we looked for alternatives and quickly found and fell in love with A* Pathfinding. This plugin let us create meshes a lot faster in execution time and integrated quite well with Behavior Designer, which was a great plus. We particularly had to make a few changes in certain areas so the meshes stayed with the rooms themselves. This wasn't strictly necessary, but it reduced loading times by a good margin. Instant Good Day [media][/media] Immortal Redneck's outdoors are the first impression you have of our game, so we wanted the place to be great and special. One of the first things we decided was that it needed a day and night cycle, even if most players won't stay long enough outside to watch it entirely. After looking for a lot of assets, we opted for InstantGoodDay. It seemed like the best solution given our needs. We wanted to change every little detail of the animation so the cycle looked original and unique, and InstantGoodDay allows you to change every hour of the cycle. It has lots of values, from fog to lighting and also colors and stars in the sky. We worked a lot with it and we integrated StylizeFog by our own. Colorful A huge effects library, with lots of post-processed stuff. At this moment, we are only using it for the transition from the outer camera in the main menu to the inside of the sarcophagus. Obviously, we'll use it with more stuff, like rapidly changing the rooms interiors and their mood. Clean Empty Directories Having an empty folder is not such a big deal, but when you are working in a big game like Immortal Redneck and when you have a git repository it starts to get annoying. This plugin's job is to erase all the empty folders without a constant use by any user. So even if that's not a big deal, it's a good way to keep your stuff tidied up. Editor Auto Save I'm sure everyone making games has suffered an unexpected failure while working. Sometimes it's your computer, sometimes it's Unity and sometimes it's something or someone else, like your cat. The outcome: hours of work lost in a fraction of a second. We've been there lots of times. So much crying... Anyway, we looked for a solution and we found Editor Auto Save. It's the best plugin around for this: it saves every scene and project (along with all the modified prefabs) on regular basis and every time you do some specific action (like playing) so you don't lose much stuff if you forgot to pay your bills. Ahem. DOTween We've know DOTween for some time now. We started using it while developing OMG Zoo Rescue, and we loved it. This plugin let us code animations in a fast, easy way. It's perfect for menus and UI, but also sprites and even models in 3D and cutscenes. Also, Mobsferatu's intro and ending were made with DOTween, so that's how much we love and trust it. Master Audio Even though Unity 5 has improved its audio systems a lot, there are better alternatives outside the official channel. Since the beginning, our friends at Sonotrigger told us that we would probably have to use something else so they could do their magic work with Immortal Redneck's sound effects and music. So we chose Master Audio. Not only does it give us access to a lot of tools, but our main reason to use it was so the audio team could integrate everything easily in the game without a lot of programming work. It's about resources and managing our time. PrefabEvolution Nested prefabs is one of the most requested features for Unity - that's why they are a part of the company's roadmap now. So, meanwhile, we had to find a third party solution, and we chose Prefab Evolution for Immortal Redneck because it's the most used and supported. Thanks to this asset we could use nested prefabs and reuse particles in different objects. It worked great and allowed us to do exactly what we wanted. Sadly, we had some problems and we ended up ditching it. Immortal Redneck is big, and that didn't go well with PrefabEvolution. Compiling and testing were stealing us a lot of time, so you have to keep an eye on what your game is going to be before using this, otherwise, great tool. Maybe you build a unified system made just for your needs. That's actually what we are doing at the moment: we are changing our workflow so we don't need so many nested prefabs and we can use one tool of our own creation in the cases we really need to do it. Rewired Unity Input is one of the least advanced tools since the engine conception. With a big game like ours, we wanted a lot of flexibility with our control system and needed a lot of compatibility with PC peripherals. Thanks to Rewired, everything is made around actions and are mapped with each device. Also, since it doesn't have any native code, it would work in consoles if needed. ShaderForge ShaderForge is one of the best assets we've used and we can't stop suggesting you use it. Working with shaders is our Achilles heel: we don't have a person specifically coding shaders. Thanks to ShaderForge, our artists started making shaders without programming knowledge and with really great results. For example, this is one of the shaders we've built in Immortal Redneck. StylizedFog A fantastic asset so you can have, heh, stylized fog in your game. You can use gradient colors so it paints the fog with those tones, and you can even mix two colors. When you have InstantGoodDay too, you can build some cool scenes with fog, changing open areas and such. We're going to use it in Immortal Redneck indoors, too. That's how much we liked it. TextMeshPro [media][/media] A Unity classic. We've been using it since our first game with the engine (Ridiculous Triathlon) and it's been with us since then. If you need to make nice texts in Unity, we don't know a better tool than TextMeshPro. This plugin allow us to use words independently of their resolution and/or size and you can apply various effects (like shadows, outlines, gradients, glowing) easily. See those damage numbers? TextMeshPro. UFPS (The hammer animation is ours, but the rest is UFPS) UFPS helped us with Immortal Redneck's engine fundamentals. We used it in the beginning so we had a solid foundation that we could modify as much as possible. At this moment, we have changed everything in UFPS so it adapts to our most specific needs. We kept the procedural animations and event system, but excluding these, there's little stuff left. It's the best starting point if you are willing to build lots of stuff on it. And that's it! What tools do you usually use? Should we try an alternative to ours? Finally, if you want to keep updated with Immortal Redneck, be sure to follow us on Twitter or like our Facebook profile. Thanks in advance!
  4. Well, it's a little early for that, we need to make more rooms (given it's a FPS roguelite, that's the most interesting thing about the game) and a few more enemies and guns. But thanks for asking! It's pretty hard making a game noticeable, so any genuine interest make us really happy.
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!