{"id":164,"date":"2024-02-15T19:24:37","date_gmt":"2024-02-15T19:24:37","guid":{"rendered":"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/?p=164"},"modified":"2024-02-15T19:24:37","modified_gmt":"2024-02-15T19:24:37","slug":"hyper-polishing-casual-game-devlog_017","status":"publish","type":"post","link":"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/2024\/02\/15\/hyper-polishing-casual-game-devlog_017\/","title":{"rendered":"Hyper Polishing Casual Game | DevLog_017"},"content":{"rendered":"\n<p> A few days out of submission, my endless runner <em>Car Centric<\/em> is in a decent spot. All of the mechanics are in place and functional. Several play testers have given feedback along the development cycle, each at different stages of the games&#8217; production stage. After several reiterations and tweaking, the game feels good to play. <br><br>This last pass of developing the game, I have been focused on polishing the game feel. SFX, camera shake on damage, UI animations, as well as polishing the PS1 style design I originally set out for. <\/p>\n\n\n\n<h5 class=\"wp-block-heading\">Gamefeel<\/h5>\n\n\n\n<p>My other projects that I have been the solo developer on have lacked in the design department. I have focused primarily on the development side of things and otherwise left to the last minute, large factors of game feel that add to a project. I wanted to change that on the hypercasual game, as a large selling point of these types of games are simple mechanically and allow for the design to shine. <\/p>\n\n\n\n<p>Stepping back from the programming was a good break and allowed me to consider how the backend I built, would allow for polishes to be added by designers if this were a larger scoped project.  <\/p>\n\n\n\n<p>Because of the retro feel of the game, I prioritized things like UI flourishes, tactile feedback in Camera Shake on damage, and the soundscape that will fill the inherit empty space of a procedurally generated endless runner.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\">Assets \/ UI<\/h5>\n\n\n\n<p>Modeling 3D assets in something like Blender felt out of my depth in the current stage, so i settled on Voxel assets as they are quick to produce and low-cost for efficiency for my game. Something that I really wanted to stretch in the last few days was cleaning up the HUD to give it a more retro feel. <\/p>\n\n\n\n<p>In that PS1 era, having dynamic UI elements was a classic and gave the game a arcade-type feel. For instance, Crash Bandicoot with the 3D items to mark the player&#8217;s stats.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"281\" src=\"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-content\/uploads\/2024\/02\/tumblr_f1db133feec3ca877a4095f606f7d1c2_47ccfc32_500.gif\" alt=\"\" class=\"wp-image-166\"\/><\/figure>\n<\/div>\n\n\n<p>This design is seared into my memory after hours of these style of games growing up. Recreating this effect, I wanted a dynamic 3D Object in the UI to give a mix of modern and retro feel. <br><\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"546\" src=\"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-15-183850-1024x546.png\" alt=\"\" class=\"wp-image-169\" style=\"width:611px;height:auto\" srcset=\"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-15-183850-1024x546.png 1024w, https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-15-183850-300x160.png 300w, https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-15-183850-768x410.png 768w, https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-content\/uploads\/2024\/02\/Screenshot-2024-02-15-183850.png 1275w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Unfortunately any GIF or Video is too big of a file size so have to go with static representation&#8230;<\/figcaption><\/figure>\n\n\n\n<p>Adding these animated items was as simple as setting a Render Target of the items active in the world and mapping the materials to use these active targets as textures. This does make a very slight hit in performance, but I felt was well worth it to further the overall feel of the game as the performance hit did not affect gameplay.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\">Further Polishing<\/h5>\n\n\n\n<p>Any last minute polishes are minor tweaks as more and more people see and play the game. I feel it is in a good spot and am very pleased I took the time and spent longer than I usually do trying to make assets and implement them in a thoughtful fashion.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A few days out of submission, my endless runner Car Centric is in a decent spot. All of the mechanics are in place and functional. Several play testers have given feedback along the development cycle, each at different stages of the games&#8217; production stage. After several reiterations and tweaking, the game feels good to play.&hellip; <a class=\"more-link\" href=\"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/2024\/02\/15\/hyper-polishing-casual-game-devlog_017\/\">Continue reading <span class=\"screen-reader-text\">Hyper Polishing Casual Game | DevLog_017<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[],"class_list":["post-164","post","type-post","status-publish","format-standard","hentry","category-devlog","entry"],"_links":{"self":[{"href":"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-json\/wp\/v2\/posts\/164","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-json\/wp\/v2\/comments?post=164"}],"version-history":[{"count":5,"href":"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-json\/wp\/v2\/posts\/164\/revisions"}],"predecessor-version":[{"id":173,"href":"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-json\/wp\/v2\/posts\/164\/revisions\/173"}],"wp:attachment":[{"href":"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-json\/wp\/v2\/media?parent=164"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-json\/wp\/v2\/categories?post=164"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/andrewdalaimo.nuacomputerscience.co.uk\/blog\/wp-json\/wp\/v2\/tags?post=164"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}