:)Įven small teams like the one in our hypothetical scenario most likely use some kind of version control system to help synchronize, publish, and update all the code and assets - therefore, why not rely on this basic element of any game dev project and improve it to create our automation?Įssentially, the idea is to “ hook into” the system of commits and branches that version control systems like Git offer and use them to trigger additional processes - in our case, the building and deployment of our prototype! If you’re not familiar with how to set up a solid and sound Git versioning workflow for your Unity projects, don’t hesitate to check out this other article I wrote on the topic a few weeks ago. Note: By default, Unity is not really tuned to use Git. Git is the most famous of these, though there are some alternatives in the world of game development, such as Perforce or Plastic SCM. Luckily, this concept of “ version” is already a fundamental building block of a very widely used type of tool: version control systems. OK - our goal is to automate the build and delivery of our game prototypes so that artists can get new versions of the product with their asset in it without annoying the dev team. Start now How can you “integrate your artists” into the dev workflow? Instead, everything should be prepared so that the context is taken care of and you can focus on the real work - otherwise, you’ll have to tweak and fix things all along the way, and you’ll lose all the benefits of the automation! :) You should not have to think every time you do a task. How to handle this asset nomenclature is a topic for another day, but it’s important to remember that, generally speaking, your pipeline is only as robust as it is “ready to use”. Note: This automation often also relies on some tools that help with the standardization/sanitization of your asset names and paths. These tasks are bottlenecks because all of the work is done manually!īut what if this integration was automated? What if there was some process in place such that whenever you published a new asset, it would be directly imported into the Unity game, a new prototype would be built, and then you would get a link on your team’s Slack in the following half-hour to download and run the new game version and check that your asset works properly? People on your team are already drowning in their to-dos and don’t want to spend minutes redoing all the build and publication steps every time an image or a model changes. In this case, you’ll want to have regular feedback on whether the assets you are making are valid and valuable for the game, but preparing a new build of the product with your updated resource takes time and effort. Someone (either you or a dev, depending on the team members’ skill sets) will have to take the new file, import it into the Unity project, rebuild the prototype with this change, and check that everything works properly. This means that whenever you create a new 3D model, 2D sprite sheet, pixel-art animation, or any other asset for the product, you’ll have to go through a time-consuming manual integration phase. There is no infrastructure yet, no big DevOps team, and no super-solid asset management pipeline. Let’s say you’re a game artist working on a small Unity project. Why you should automate the management of your game assets How to set it up for a Git-versioned Unity project using Codemagic.Why automating the dev/artist interface is beneficial.So, in this article, we’ll discuss how we can use tech to ease collaboration and achieve continuous art-to-dev communication. However, this can be pretty complex in practice because neither artists nor devs have the time to manage the entire lifecycle of all resources from design to creation and, eventually, implementation. To collaborate effectively, they need to be able to seamlessly communicate and easily share assets between teams. For example, the heart of any game project is developers and artists. Games make great projects because they mix plenty of skill sets and bring together various areas of expertise. Let’s see how we can help artists and game developers work together more efficiently with the support of some automation. Not much tooling is needed to set this up - you can use any Git provider for version control, Slack for notifications, and a Codemagic pipeline with a webhook that triggers once a new branch with a specific name is added. For example, using automatic build triggering once a new asset is added allows the artist to see how it looks in the game without bothering the developer, which reduces waiting times and context switching. ![]() ![]() TL DR: Collaboration between Unity developers and artists can be enhanced by adding some automation tools. This post has been updated in July 2022 to introduce some fixes to the codemagic.yaml file in the sample project.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |