{"id":15633422,"url":"https://github.com/mikeroyal/game-console-dev-guide","last_synced_at":"2025-08-21T13:33:05.001Z","repository":{"id":43194624,"uuid":"469589027","full_name":"mikeroyal/Game-Console-Dev-Guide","owner":"mikeroyal","description":"Game Console Dev Guide. Learn to develop games for Xbox Series X|S, PlayStation 5, Nintendo Switch, Steam Deck, and Apple Silicon. Developing with Unreal Engine 5, Unity, Godot Engine, and Blender.","archived":false,"fork":false,"pushed_at":"2024-01-04T22:43:07.000Z","size":2196,"stargazers_count":154,"open_issues_count":1,"forks_count":11,"subscribers_count":6,"default_branch":"main","last_synced_at":"2024-02-17T07:33:54.115Z","etag":null,"topics":["apple-silicon","d3d12","directx12","game-console","game-dev","game-developement","game-development","game-porting-toolkit","game-programming","gamedev","godot-engine","photogrammetry","playstation","ps5","ray-tracing","rendering-engine","ue5","unity3d-games","unreal-engine","unreal-engine-plugin"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mikeroyal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"Contributing.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2022-03-14T05:10:54.000Z","updated_at":"2024-02-05T11:40:37.000Z","dependencies_parsed_at":"2024-01-13T16:52:24.424Z","dependency_job_id":"5ca5a7b0-a465-4190-9392-de4c2337ffe9","html_url":"https://github.com/mikeroyal/Game-Console-Dev-Guide","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikeroyal%2FGame-Console-Dev-Guide","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikeroyal%2FGame-Console-Dev-Guide/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikeroyal%2FGame-Console-Dev-Guide/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikeroyal%2FGame-Console-Dev-Guide/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mikeroyal","download_url":"https://codeload.github.com/mikeroyal/Game-Console-Dev-Guide/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230516192,"owners_count":18238353,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apple-silicon","d3d12","directx12","game-console","game-dev","game-developement","game-development","game-porting-toolkit","game-programming","gamedev","godot-engine","photogrammetry","playstation","ps5","ray-tracing","rendering-engine","ue5","unity3d-games","unreal-engine","unreal-engine-plugin"],"created_at":"2024-10-03T10:49:19.115Z","updated_at":"2024-12-20T00:08:50.776Z","avatar_url":"https://github.com/mikeroyal.png","language":"C++","funding_links":["https://www.patreon.com/godotengine"],"categories":[],"sub_categories":[],"readme":"\n\u003ch1 align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/158109329-1c711d6e-c886-4aec-b98e-1de6b394c2cc.gif\"\u003e\n  \u003cbr /\u003e\n  Game Console Dev Guide\n\u003c/h1\u003e\n\n \u003ca href=\"https://github.com/mikeroyal?tab=followers\"\u003e\n         \u003cimg alt=\"followers\" title=\"Follow me for Updates\" src=\"https://custom-icon-badges.demolab.com/github/followers/mikeroyal?color=236ad3\u0026labelColor=1155ba\u0026style=for-the-badge\u0026logo=person-add\u0026label=Follow\u0026logoColor=white\"/\u003e\u003c/a\u003e \t\n\n![Maintenance](https://img.shields.io/maintenance/yes/2024?style=for-the-badge)\n![Last-Commit](https://img.shields.io/github/last-commit/mikeroyal/game-console-dev-guide?style=for-the-badge)\n\n#### A guide covering Game Console Development including the applications, libraries and tools that will make you a better and more efficient Game Console Developer.\n\n**Note: You can easily convert this markdown file to a PDF in [VSCode](https://code.visualstudio.com/) using this handy extension [Markdown PDF](https://marketplace.visualstudio.com/items?itemName=yzane.markdown-pdf).**\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/158109343-3b211c18-8b4b-443f-963b-930cf3fd5c6f.png\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\n# Table of Contents\n\n1. [Getting Started with Game Consoles](https://github.com/mikeroyal/Game-Console-Dev-Guide#getting-started-with-game-consoles)\n\n      - [YouTube Tutorials](#youtube-tutorials)\n      - [Xbox](https://github.com/mikeroyal/Game-Console-Dev-Guide#xbox-development)\n      - [PlayStation](https://github.com/mikeroyal/Game-Console-Dev-Guide#playstation-development)\n      - [Nintendo Switch](https://github.com/mikeroyal/Game-Console-Dev-Guide#nintendo-switch-development)\n      - [Steam Deck](https://github.com/mikeroyal/Game-Console-Dev-Guide#steam-deck-development)\n      - [Apple Silicon](#development-on-apple-silicon)\n\n2. [Getting Started with Unreal Engine](https://github.com/mikeroyal/Game-Console-Dev-Guide#unreal-engine-development)\n\n    - [Unreal Engine Tools](https://github.com/mikeroyal/Game-Console-Dev-Guide#unreal-engine-tools)\n    - [Unreal Engine Learning Resources](https://github.com/mikeroyal/Game-Console-Dev-Guide#unreal-engine-learning-resources)\n    \n3. [Getting Started with Unity](https://github.com/mikeroyal/Game-Console-Dev-Guide#unity-development)\n\n   - [Unity Tools](https://github.com/mikeroyal/Game-Console-Dev-Guide#unity-tools)\n   - [Unity Learning Resources](https://github.com/mikeroyal/Game-Console-Dev-Guide#unity-learning-resources)\n\n4. [Getting Started with Godot Engine](#getting-started-with-godot-engine)\n\n   - [Godot Engine Tools](#godot-engine-tools)\n   - [Godot Learning Resources](#godot-learning-resources)\n   \n5. [Getting Started with Blender](https://github.com/mikeroyal/Game-Console-Dev-Guide#blender-development)\n\n6. [VS Code Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#vs-code-development)\n\n    - [VS Code Extensions for Developer Productivity](https://github.com/mikeroyal/Game-Console-Dev-Guide#VS-Code-Extensions-for-Developer-Productivity)\n\n7. [Xcode Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#xcode-development)\n\n8. [Game Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#game-development)\n\n9. [Steam Deck Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#steam-deck)\n\n10. [Augmented Reality (AR) \u0026 Virtual Reality (VR)](https://github.com/mikeroyal/Game-Console-Dev-Guide#augmented-reality-ar--virtual-reality-vr)\n\n11. [Vulkan Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#vulkan-development)\n\n12. [Metal Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#metal-development)\n\n13. [DirectX Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#directx-development)\n\n14. [OpenGL Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#opengl-development)\n\n15. [OpenCL Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#opencl-development)\n\n16. [Computer Vision Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#computer-vision-development)\n\n17. [Photogrammetry Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#photogrammetry-development)\n\n18. [Geometric optics](https://github.com/mikeroyal/Game-Console-Dev-Guide#Geometric-optics)\n\n19. [Autodesk Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#autodesk-development)\n\n20. [LiDAR Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#lidar-development)\n\n21. [Linear Algebra](https://github.com/mikeroyal/Game-Console-Dev-Guide#linear-algebra)\n\n22. [Algorithms](https://github.com/mikeroyal/Game-Console-Dev-Guide#algorithms)\n\n23. [Machine Learning](https://github.com/mikeroyal/Game-Console-Dev-Guide#machine-learning)\n\n24. [Deep Learning](https://github.com/mikeroyal/Game-Console-Dev-Guide#deep-learning)\n\n25. [CUDA Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#cuda-development)\n\n26. [MATLAB Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#matlab-development)\n\n27. [C/C++ Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#cc-development)\n\n28. [Python Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#python-development)\n\n29. [Lua Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#lua-development)\n\n30. [GPU Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#GPU-development)\n\n31. [SSD Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#SSD-development)\n\n      - [System Memory](https://github.com/mikeroyal/Game-Console-Dev-Guide#System-memory)\n      - [SSD Interfaces](https://github.com/mikeroyal/Game-Console-Dev-Guide#SSD-interfaces)\n      - [PCIe Protocols](https://github.com/mikeroyal/Game-Console-Dev-Guide#PCIe-protocols)\n      - [Fabrics](https://github.com/mikeroyal/Game-Console-Dev-Guide#Fabrics)\n      \n31. [Firmware Development](https://github.com/mikeroyal/Game-Console-Dev-Guide#Firmware-Development)\n\n32. [File systems \u0026 Storage](https://github.com/mikeroyal/Game-Console-Dev-Guide#file-systems--storage)\n\n33. [Networking](https://github.com/mikeroyal/Game-Console-Dev-Guide#networking)\n\n34. [Databases](https://github.com/mikeroyal/Game-Console-Dev-Guide#databases)\n\n# Getting Started with Game Consoles\n[Back to the Top](https://github.com/mikeroyal/Game-Console-Dev-Guide#table-of-contents)\n\n## YouTube Tutorials\n\n[![New to Game Development? Start Here - Microsoft Game Dev](https://ytcards.demolab.com/?id=7fqMQQlHeKk\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"New to Game Development? Start Here - Microsoft Game Dev\")](https://www.youtube.com/watch?v=7fqMQQlHeKk) \n[![5 Game Development Tips for the Nintendo Switch](https://ytcards.demolab.com/?id=qAiw03bXb3o\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"5 Game Development Tips for the Nintendo Switch\")](https://www.youtube.com/watch?v=qAiw03bXb3o) \n[![Game Builder Garage - Nintendo Switch](https://ytcards.demolab.com/?id=SXG4KdstVw4\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Game Builder Garage - Nintendo Switch\")](https://www.youtube.com/watch?v=SXG4KdstVw4) \n[![Development Without a Dev-Kit](https://ytcards.demolab.com/?id=Nn2Sjmkv6u0\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Development Without a Dev-Kit\")](https://www.youtube.com/watch?v=Nn2Sjmkv6u0) \n[![How to Create a Game in Unreal Engine 5 - UE5 Beginner Tutorial](https://ytcards.demolab.com/?id=1XjgLKrb4_M\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"How to Create a Game in Unreal Engine 5 - UE5 Beginner Tutorial\")](https://www.youtube.com/watch?v=1XjgLKrb4_M)\n[![Unreal Engine 5 Beginner Tutorial - UE5 Starter Course](https://ytcards.demolab.com/?id=k-zMkzmduqI\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Unreal Engine 5 Beginner Tutorial - UE5 Starter Course\")](https://www.youtube.com/watch?v=k-zMkzmduqI)\n[![EVERYTHING NEW IN UNREAL ENGINE 5.3](https://ytcards.demolab.com/?id=FOi1sktOuPg\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"EVERYTHING NEW IN UNREAL ENGINE 5.3\")](https://www.youtube.com/watch?v=FOi1sktOuPg)\n[![Unreal Engine 5.3 New Features](https://ytcards.demolab.com/?id=mOpr1aR6xAw\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Unreal Engine 5.3 New Features\")](https://www.youtube.com/watch?v=mOpr1aR6xAw) \n[![Unreal Engine 5 for Architecture - 2023 Full Beginner Course](https://ytcards.demolab.com/?id=bT8aSTkpkDY\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Unreal Engine 5 for Architecture - 2023 Full Beginner Course\")](https://www.youtube.com/watch?v=bT8aSTkpkDY)\n[![Future of architectural visualization | Interior and exterior in Unreal Engine 5 | ArhiTeach school](https://ytcards.demolab.com/?id=1NrwktfF2Eo\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Future of architectural visualization | Interior and exterior in Unreal Engine 5 | ArhiTeach school\")](https://www.youtube.com/watch?v=1NrwktfF2Eo)\n[![Exploring the Hillside Sample Project with Safdie Architects and Neoscape | Unreal Engine](https://ytcards.demolab.com/?id=D55T_v8039s\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Exploring the Hillside Sample Project with Safdie Architects and Neoscape | Unreal Engine\")](https://www.youtube.com/watch?v=D55T_v8039s)\n[![Unreal Engine 5 - Google Maps API \u0026 Cesium - Full tutorial PT 1](https://ytcards.demolab.com/?id=TbHCvAo-aGg\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Unreal Engine 5 - Google Maps API \u0026 Cesium - Full tutorial PT 1\")](https://www.youtube.com/watch?v=TbHCvAo-aGg) \n[![UNREAL ENGINE 5 vs CORONA which is better for Architectural Rendering?](https://ytcards.demolab.com/?id=8bh3NxJXXEg\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"UNREAL ENGINE 5 vs CORONA which is better for Architectural Rendering?\")](https://www.youtube.com/watch?v=8bh3NxJXXEg) \n[![Unreal Engine 5 Cinematic Photorealistic Architecture Rendering | Complete Tutorial](https://ytcards.demolab.com/?id=Fh6SxqtsReI\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Unreal Engine 5 Cinematic Photorealistic Architecture Rendering | Complete Tutorial\")](https://www.youtube.com/watch?v=Fh6SxqtsReI) \n[![The Blender to Unreal Engine Workflow](https://ytcards.demolab.com/?id=N8y_eH7QB2o\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"The Blender to Unreal Engine Workflow\")](https://www.youtube.com/watch?v=N8y_eH7QB2o) \n[![15 Recent Graphically Stunning Unreal Engine 5 Demos YOU NEED TO CHECK OUT](https://ytcards.demolab.com/?id=LyvuadJyX8k\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"15 Recent Graphically Stunning Unreal Engine 5 Demos YOU NEED TO CHECK OUT\")](https://www.youtube.com/watch?v=LyvuadJyX8k) \n[![Physics systems, ropes and pressure simulations in Heavenly Bodies | Unity Creator Spotlight](https://ytcards.demolab.com/?id=NlXJuiKyaOs\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Physics systems, ropes and pressure simulations in Heavenly Bodies | Unity Creator Spotlight\")](https://www.youtube.com/watch?v=NlXJuiKyaOs)\n[![Tips for creating your own C# code style guide | Tutorial](https://ytcards.demolab.com/?id=bKGMkkf4X0o\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Tips for creating your own C# code style guide | Tutorial\")](https://www.youtube.com/watch?v=bKGMkkf4X0o) \n[![Unity Creator Spotlight Playlist](https://ytcards.demolab.com/?id=NlXJuiKyaOs\u0026list=PLX2vGYjWbI0S44qONl7OmB5tpq1YaFN8F\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Unity Creator Spotlight Playlist\")](https://www.youtube.com/watch?v=NlXJuiKyaOs\u0026list=PLX2vGYjWbI0S44qONl7OmB5tpq1YaFN8F) \n[![Introducing Unity Wētā Tools | Unity](https://ytcards.demolab.com/?id=NTdNEE-GVy4\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Introducing Unity Wētā Tools | Unity\")](https://www.youtube.com/watch?v=NTdNEE-GVy4) \n[![Volumetrics: Introduction to ray marching tutorial | Unity](https://ytcards.demolab.com/?id=hXYOlXVRRL8\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Volumetrics: Introduction to ray marching tutorial | Unity\")](https://www.youtube.com/watch?v=hXYOlXVRRL8) \n[![Why Use The Godot Game Engine?](https://ytcards.demolab.com/?id=pATpV7MwZr8\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Why Use The Godot Game Engine?\")](https://www.youtube.com/watch?v=pATpV7MwZr8) \n[![Godot Game Development – Crash Course for Beginners](https://ytcards.demolab.com/?id=S8lMTwSRoRg\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Godot Game Development – Crash Course for Beginners\")](https://www.youtube.com/watch?v=S8lMTwSRoRg) \n[![Godot 4.1 is OUT: smoother, more reliable, and with plenty of new features.](https://ytcards.demolab.com/?id=PAtG_fHhIx8\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Godot 4.1 is OUT: smoother, more reliable, and with plenty of new features.\")](https://www.youtube.com/watch?v=PAtG_fHhIx8)\n[![Godot 4 Tutorial - Heart Platformer](https://ytcards.demolab.com/?id=M8-JVjtJlIQ\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Godot 4 Tutorial - Heart Platformer\")](https://www.youtube.com/watch?v=M8-JVjtJlIQ) \n[![10 Indie Games and Tools Made in the Godot Engine](https://ytcards.demolab.com/?id=9NaKoUZ6cQ0\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"10 Indie Games and Tools Made in the Godot Engine\")](https://www.youtube.com/watch?v=9NaKoUZ6cQ0) \n[![Godot Engine - Desktop/Console](https://ytcards.demolab.com/?id=UAS_pUTFA7o\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Godot Engine - Desktop/Console \")](https://www.youtube.com/watch?v=UAS_pUTFA7o)\n[![Blender 4.0 is HUGE! - Blender Today](https://ytcards.demolab.com/?id=_VAgfzDf48s\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Blender 4.0 is HUGE! - Blender Today\")](https://www.youtube.com/watch?v=_VAgfzDf48s) \n[![UPBGE -- Blender 3.6 Powered Game Engine](https://ytcards.demolab.com/?id=E2CssnQnOUI\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"UPBGE -- Blender 3.6 Powered Game Engine\")](https://www.youtube.com/watch?v=E2CssnQnOUI) \n[![Blender Game Engine Tutorials](https://ytcards.demolab.com/?id=atsvXJcg7XI\u0026list=PLkmTEjnM9TiQPWC9il64M9GHyp_LX_EkG\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Blender Game Engine Tutorials \")](https://www.youtube.com/watch?v=atsvXJcg7XI\u0026list=PLkmTEjnM9TiQPWC9il64M9GHyp_LX_EkG) \n[![Photogrammetry Course: Photoreal 3d With Blender And Reality Capture ](https://ytcards.demolab.com/?id=dWuaIv6UiVQ\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Photogrammetry Course: Photoreal 3d With Blender And Reality Capture\")](https://www.youtube.com/watch?v=dWuaIv6UiVQ)\n[![Photogrammetry in Blender and Meshroom - Blender Tutorial](https://ytcards.demolab.com/?id=L_SdlR57NtU\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Photogrammetry in Blender and Meshroom - Blender Tutorial\")](https://www.youtube.com/watch?v=L_SdlR57NtU)\n[![How I Create Characters For Game Development!](https://ytcards.demolab.com/?id=zStH0rzmRMA\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"How I Create Characters For Game Development!\")](https://www.youtube.com/watch?v=zStH0rzmRMA) [![How to upgrade Game Porting Toolkit 1.03 (Terminal, CLI version) on Mac](https://ytcards.demolab.com/?id=K41Rd-0AnVU\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"How to upgrade Game Porting Toolkit 1.03 (Terminal, CLI version) on Mac\")](https://www.youtube.com/watch?v=K41Rd-0AnVU)\n[![Game Porting Toolkit gets a BIG SURPRISE update! | Andrew Tsai](https://ytcards.demolab.com/?id=Nl12azxMbFc\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Game Porting Toolkit gets a BIG SURPRISE update! | Andrew Tsai\")](https://www.youtube.com/watch?v=Nl12azxMbFc)\n[![The Mac gaming DirectX 12 Revolution is NOW!](https://ytcards.demolab.com/?id=CcYyvzHtJVM\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=250 \"The Mac gaming DirectX 12 Revolution is NOW!\")](https://www.youtube.com/watch?v=CcYyvzHtJVM)\n\n## Xbox Development\n[Back to the Top](https://github.com/mikeroyal/Game-Console-Dev-Guide#table-of-contents)\n\n   **Quick links to Development Resources**\n\n - [Developing Games | Xbox and Windows](https://www.xbox.com/en-US/developers)\n \n - [Xbox Creators Program](https://www.xbox.com/en-US/developers/creators-program)\n \n - [ID@Xbox Program](https://www.xbox.com/en-US/developers/id)\n \n - [Xbox game development - Game Stack | Microsoft Docs](https://docs.microsoft.com/en-us/gaming/xbox/)\n \n - [Multi-platform development - Unreal Engine](https://www.unrealengine.com/en-US/features/multi-platform-development)\n \n - [Tips for developing console games (Xbox, PlayStation, Nintendo)](https://unity.com/how-to/develop-console-video-games-unity)\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/158109359-bef5dfd3-6c38-4cb0-8a48-ba2145c670fb.png\"\u003e\n  \u003cbr /\u003e\n  Xbox Series X\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/158109363-670074b5-4261-41ca-b02d-c1f99971db76.png\"\u003e\n  \u003cbr /\u003e\n  Xbox Series S\n\u003c/p\u003e\n      \n## Playstation Development\n[Back to the Top](https://github.com/mikeroyal/Game-Console-Dev-Guide#table-of-contents)\n\n  **Quick links to Development Resources**\n\n  - [PlayStation® Partners Program](https://partners.playstation.net/)\n  \n  - [PlayStation® Studios | PlayStation (US)](https://www.playstation.com/en-us/corporate/playstation-studios/)\n  \n  - [PlayStation Support](https://www.playstation.com/en-us/support/?smcid=pdc%3Aen-us%3Acorporate-playstation-and-the-environment-community%3Aprimary%20nav%3Amsg-support%3Asupport)\n  \n  - [PlayStation® Plus](https://www.playstation.com/en-us/ps-plus/?smcid=pdc%3Aen-us%3Acorporate-playstation-and-the-environment-community%3Aprimary%20nav%3Amsg-services%3Aps-plus)\n  \n  - [PS Now](https://www.playstation.com/en-us/ps-now/?smcid=pdc%3Aen-us%3Acorporate-playstation-and-the-environment-community%3Aprimary%20nav%3Amsg-services%3Aps-now)\n  \n  - [Multi-platform development - Unreal Engine](https://www.unrealengine.com/en-US/features/multi-platform-development)\n  \n  - [Creating games for Playstation | Unity](https://unity.com/solutions/playstation)\n  \n  - [Tips for developing console games (Xbox, PlayStation, Nintendo)](https://unity.com/how-to/develop-console-video-games-unity)\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/158109372-7e1dac0a-8df3-4867-a36e-7080e21014a7.png\"\u003e\n  \u003cbr /\u003e\n  PlayStation 5\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/158109375-f189109a-ccf6-47fc-a543-7d1831c3f970.png\"\u003e\n  \u003cbr /\u003e\n  PlayStation 4\n\u003c/p\u003e\n\n[PlayStation® VR Headset](https://www.playstation.com/en-us/ps-vr/) is a virtual reality headset developed by Sony Interactive Entertainment. It gives the user an amazing gaming experience with stunning High Dynamic Range visuals and up to 120fps, as two 1920 x 1080 OLED displays deliver a vast 100º field of view. PSVR is fully functional with the PlayStation 4™ and is forward compatible with the PlayStation 5™ home video game console. \n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://user-images.githubusercontent.com/45159366/117720763-e9750000-b193-11eb-888a-e4bccd6c30eb.png\"\u003e\n\u003cbr /\u003e\n\u003c/p\u003e\n\nPlayStation VR Headset. Source: [PlayStation](https://www.playstation.com/en-us/ps-vr/)\n\n[PlayStation®VR2](https://www.playstation.com/en-us/ps-vr2/) is the next generation of virtual reality gaming by PlayStation. It gives the user an amazing gaming experience with new stunning 4K High Dynamic Range visuals and up to 120fps, as two 2000 x 2040 OLED displays deliver over four times the resolution generated by the original PlayStation®VR headset. A vast 110º field of view and a light, well-balanced Fresnel lens. The lens adjustment dial allows you to customize spacing between lenses to match your eye position for an optimal onscreen image. Along with ground-breaking new controllers and genre-defining games, all made possible by the power of PS5™.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"[psvr2\" src=\"https://user-images.githubusercontent.com/45159366/156683318-6811ecf8-a8f2-4652-8872-f669cf38b459.png\"\u003e\n\u003c/p\u003e\n\nPlayStation VR 2 Headset. Source: [PlayStation](https://www.playstation.com/en-us/ps-vr2/)\n      \n## Nintendo Switch Development\n[Back to the Top](https://github.com/mikeroyal/Game-Console-Dev-Guide#table-of-contents)\n\n  **Quick links to Development Resources**\n\n  - [Nintendo Developer Portal](https://developer.nintendo.com/)\n  \n  - [Nintendo Developer Tools/ Middleware](https://developer.nintendo.com/tools)\n  \n  - [Multi-platform development - Unreal Engine](https://www.unrealengine.com/en-US/features/multi-platform-development)\n  \n  - [Tips for developing console games (Xbox, PlayStation, Nintendo)](https://unity.com/how-to/develop-console-video-games-unity)\n  \n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/158109381-493efc29-3da2-4db8-b772-43cb3ca1f97a.png\"\u003e\n  \u003cbr /\u003e\n  Nintendo Switch\n\u003c/p\u003e\n\n## Steam Deck Development\n[Back to the Top](https://github.com/mikeroyal/Game-Console-Dev-Guide#table-of-contents)\n  \n  **Quick links to Development Resources**\n\n  - [Getting your game ready for Steam Deck](https://partner.steamgames.com/doc/steamdeck/recommendations)\n\n  - [Developing for Steam Deck without a Dev-Kit](https://partner.steamgames.com/doc/steamdeck/testing)\n\n  - [Steam Deck Developer Kits](https://partner.steamgames.com/doc/steamdeck/devkits)\n\n  - [Steam Deck and Proton](https://partner.steamgames.com/doc/steamdeck/proton)\n\n  - [Steam Deck Developer Forums](https://steamcommunity.com/groups/steamworks/discussions/27/)\n  \n  - [Multi-platform development - Unreal Engine](https://www.unrealengine.com/en-US/features/multi-platform-development)\n\n  - [Tips for developing console games (Xbox, PlayStation, Nintendo)](https://unity.com/how-to/develop-console-video-games-unity)\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/158109383-57188374-6632-4ef2-ae58-1d66351b0fa8.png\"\u003e\n  \u003cbr /\u003e\n  Steam Deck\n\u003c/p\u003e\n\n[Steamworks](https://partner.steamgames.com/doc/home) is a free suite of tools available to any developer to use in their game or software on Steam and the Steam Deck.\n\n[Steam Hardware GitLab Repo](https://gitlab.steamos.cloud/SteamDeck/hardware) is a repository that contains CAD files for the external shell (surface topology) of Steam Deck, under a Creative Commons license. This includes an STP model, STL model, and drawings (DWG) for reference.\n\n[Dynamic Cloud Sync](https://steamcommunity.com/groups/steamworks/announcements/detail/3142949576401813670) is a tool that Steam will use  to automatically upload all modified save game data to the cloud prior to the device entering sleep mode. Users can then resume their game on any PC, laptop or other device. Steam will also automatically download any save game changes when users return to their Steam Deck and wake up the device.\n\n[Steam Cloud](https://partner.steamgames.com/doc/features/cloud) is a tool that provides an easy and transparent remote file storage system for your game. Files specified in the Auto-Cloud configuration or written to disk (created, modified, deleted, etc.) using the Cloud API will automatically be replicated to the Steam servers after the game exits. If the user changes computers, the files are automatically downloaded to the new computer prior to the game launching. The game can then access the files by reading them through the Cloud API or reading them directly from disk as usual. Avoid machine specific configurations such as video settings.\n\n[Gamescope](https://github.com/Plagman/gamescope) is a SteamOS session micro-compositing window manager formerly known as [steamcompmgr](https://github.com/ValveSoftware/steamos-compositor).\n\n[AMD FidelityFX Super Resolution (FSR)](https://www.amd.com/en/technologies/radeon-software-fidelityfx) is an open source, high-quality solution for producing high resolution frames from lower resolution inputs. FSR enables “practical performance” for costly render operations, such as hardware ray tracing for the AMD RDNA™ and AMD RDNA™ 2 architectures.\n\n[MangoHud](https://github.com/flightlessmango/MangoHud) is a Vulkan and OpenGL overlay for monitoring FPS, temperatures, CPU/GPU load and more.\n\n[GOverlay](https://github.com/benjamimgois/goverlay) is an open source project aimed to create a Graphical UI to manage Vulkan/OpenGL overlays. It is still in early development.\n\n[ReplaySorcery](https://github.com/matanui159/ReplaySorcery) is an open-source, instant-replay solution for Linux.\n\n[Deck Verified](https://www.steamdeck.com/en/verified) is a program that reviews games in Steam's catalog verifying their compatibility with the Steam Deck. So when you visit your Library on Steam Deck, you’ll find a compatibility badge on each title, reflecting the kind of experience you can expect when playing each game on Steam Deck.\n\n# Development on Apple Silicon\n\n[Back to the Top](#table-of-contents)\n\n\u003ch1 align=\"center\"\u003e\n \u003cimg src=\"https://github.com/mikeroyal/Apple-Silicon-Guide/assets/45159366/36783762-b5f9-4a8d-bec8-a4a261ccdd20\"\u003e\n  \u003cbr /\u003e\n\u003c/h1\u003e\n\n**Note:** Learn more about [Apple Silicon here](https://github.com/mikeroyal/Apple-Silicon-Guide)\n\n**Quick Links to Developer Resources**\n\n * [AR Creation Tools - Augmented Reality | Apple Developer](https://developer.apple.com/augmented-reality/tools/)\n * [Augmented Reality applications | Apple](https://www.apple.com/augmented-reality/)\n * [Unity's Beta Program for Creating Spatial Experiences](https://create.unity.com/spatial)\n * [Unity Learn Training Program](https://learn.unity.com)\n * [Unity Manual: XR](https://docs.unity3d.com/Manual/XR.html)\n * [Intro to XR: VR, AR, and MR Foundations - Unity Learn](https://learn.unity.com/course/introduction-to-xr-vr-ar-and-mr-foundations)\n * [Unity XR: Build VR and AR Apps](https://unity3d.com/learn/unity-xr-apps)\n\n## Tools and Frameworks\n\n[Back to the Top](#table-of-contents)\n\n * [Reality Composer Pro](https://developer.apple.com/videos/play/wwdc2023/10083/) is a tool that let's you discover how to easily compose, edit, and preview 3D content with Reality Composer Pro. Follow along as you explore this developer tool by setting up a new project, composing scenes, adding particle emitters and audio, and even previewing content on your device. \n * [Reality Composer](https://developer.apple.com/augmented-reality/tools/) is a powerful tool that makes it easy for you to create interactive augmented reality experiences with no prior 3D experience. The Reality Converter quickly converts your existing 3D models to [USDZ](https://graphics.pixar.com/usd/files/USDZFileFormatSpecification.pdf) so it works seamlessly in our tools and on all AR-enabled iPhone and iPad devices.\n * [Apple Vision](https://developer.apple.com/documentation/vision) is a framework that performs face and face landmark detection, text detection, barcode recognition, image registration, and general feature tracking. Vision also allows the use of custom Core ML models for tasks like classification or object detection.\n * [Metal shader converter](https://developer.apple.com/metal/shader-converter/) is a tool that converts shader intermediate representations in LLVM IR bytecode into bytecode suitable to be loaded into Metal. It’s available as a library and a standalone executable. All the functionality exposed through the library interface is available via the standalone executable.\n * [USDZ](https://graphics.pixar.com/usd/release/spec_usdz.html) is a file format that contains a 3D scene or object saved in the USDZ Universal format, which is developed by Apple and Pixar Animation Studios. It is an uncompressed and unencrypted .ZIP archive that stores a Universal Scene Description (.USD, USDA, or USDC) file, which includes 3D geometry and shading data. USDZ files may also contain .PNG and .JPEG image textures and .M4A, .MP3, or .WAV audio files utilized in the 3D object or scene.\n * [ARKit](https://developer.apple.com/augmented-reality/arkit/) is a set set of software development tools to enable developers to build augmented-reality apps for iOS developed by Apple. The latest version ARKit 3.5 takes advantage of the new LiDAR Scanner and depth sensing system on iPad Pro(2020) to support a new generation of AR apps that use Scene Geometry for enhanced scene understanding and object occlusion.\n * [RealityKit](https://developer.apple.com/documentation/realitykit) is a framework to implement high-performance 3D simulation and rendering with information provided by the ARKit framework to seamlessly integrate virtual objects into the real world.\n * [RealityUI](https://github.com/maxxfrazer/RealityUI) is a Swift Package for creating familiar UI Elements and animations in a RealityKit rendered Augmented Reality or Virtual Reality scene. \n * [SceneKit](https://developer.apple.com/scenekit/) is a high-level 3D graphics framework that helps you create 3D animated scenes and effects in your iOS apps.\n * [SwiftUI](https://developer.apple.com/documentation/swiftui) is a user interface toolkit that provides views, controls, and layout structures for declaring your app's user interface. The SwiftUI framework provides event handlers for delivering taps, gestures, and other types of input to your application.\n * [UIKit](https://developer.apple.com/documentation/uikit) is a framework provides the required infrastructure for your iOS or tvOS apps. It provides the window and view architecture for implementing your interface, the event handling infrastructure for delivering Multi-Touch and other types of input to your app, and the main run loop needed to manage interactions among the user, the system, and your app.\n * [SpriteKit](https://developer.apple.com/documentation/spritekit) is a general-purpose framework for drawing shapes, particles, text, images, and video in two dimensions. It leverages Metal to achieve high-performance rendering, while offering a simple programming interface to make it easy to create games and other graphics-intensive apps. \n * [MetalFX](https://developer.apple.com/videos/play/wwdc2022/10103/) is a new API that provides platform optimized graphics effects for Metal applications. With MetalFX Upscaling, your application can now render frames at a lower resolution, reducing rendering time, without compromising rendering quality. We'll also show you how and when to use its two effects: spatial upscaling, which delivers substantial performance gains, and temporal AA and upscaling, which delivers the highest quality rendering.\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/172254747-9308be59-4d79-4677-a5ec-cf40f5762cf7.png\"\u003e\n  \u003cbr /\u003e\n MetalFX Rendering. Image Credit: Apple\n\u003c/p\u003e\n\n * [Apple Core Animation Framework](https://developer.apple.com/documentation/quartzcore) is a graphics rendering and animation infrastructure that provides high frame rates and smooth animations without burdening the CPU and slowing down your app.\n * [Apple Core Graphics Framework](https://developer.apple.com/documentation/coregraphics) is a framework based on the Quartz advanced drawing engine. It provides low-level, lightweight 2D rendering with unmatched output fidelity.\n * [GPUImage3](https://github.com/BradLarson/GPUImage3) is the third generation of the [GPUImage framework](https://github.com/BradLarson/GPUImage), an open source project for performing GPU-accelerated image and video processing on Mac and iOS. This third generation is redesigned to use **[Apple's Metal](https://developer.apple.com/metal/) in place of OpenGL**.\n\n\n## Game Porting Toolkit\n\n[Back to the Top](#table-of-contents)\n\n\u003ch3 align=\"center\"\u003e\n \u003cimg src=\"https://github.com/mikeroyal/Apple-Silicon-Guide/assets/45159366/375b3bc6-3a9a-4a71-90a1-8181254260ff\"\u003e\n  \u003cbr /\u003e\n \n\u003c/h3\u003e\n\n[Game Porting Toolkit](https://github.com/apple/homebrew-apple/tree/main/Formula) is Apple's new translation layer which combines Wine with Apple's own D3DMetal which supports [DirectX 9 through 12](https://en.wikipedia.org/wiki/DirectX). Games that use anti-cheat([Easy Anti-Cheat](https://www.easy.ac/) and [BattleEye](https://www.battleye.com/)) or aggressive [DRM](https://en.wikipedia.org/wiki/Digital_rights_management) generally don't work. Games that require [AVX/AVX 2](https://en.wikipedia.org/wiki/Advanced_Vector_Extensions) CPUs also don't work.\n\n * The Game Porting Toolkit builds a [dxil](https://github.com/Microsoft/DirectXShaderCompiler/blob/main/docs/DXIL.rst) to [metallib](https://developer.apple.com/documentation/metal) converter and DirectX11/DirectX12 to Metal runtime translator. Non-graphics APIs are translated by Wine and do not use any tech from [moltenVK](https://github.com/KhronosGroup/MoltenVK), [DXVK](https://github.com/doitsujin/dxvk); or [SPIRV-Cross](https://github.com/KhronosGroup/SPIRV-Cross). The Metal shader converter can be shipped by games and can be used in the game developer asset pipelines.\n \n * [Metal shader converter](https://developer.apple.com/metal/shader-converter/) is a tool that converts shader intermediate representations in LLVM IR bytecode into bytecode suitable to be loaded into Metal. It’s available as a library and a standalone executable. All the functionality exposed through the library interface is available via the standalone executable.\n\n[![Game Porting Toolkit gets a BIG SURPRISE update! | Andrew Tsai](https://ytcards.demolab.com/?id=Nl12azxMbFc\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=240 \"Game Porting Toolkit gets a BIG SURPRISE update! | Andrew Tsai\")](https://www.youtube.com/watch?v=Nl12azxMbFc)\n[![The Mac gaming DirectX 12 Revolution is NOW!](https://ytcards.demolab.com/?id=CcYyvzHtJVM\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=250 \"The Mac gaming DirectX 12 Revolution is NOW!\")](https://www.youtube.com/watch?v=CcYyvzHtJVM)\n[![Play ANY Windows Game on Mac with the Game Porting Toolkit! | Step-by-Step Guide](https://ytcards.demolab.com/?id=jUvDPCxkHIU\u0026lang=en\u0026background_color=%230d1117\u0026title_color=%23ffffff\u0026stats_color=%23dedede\u0026width=250 \"Play ANY Windows Game on Mac with the Game Porting Toolkit! | Step-by-Step Guide\")](https://www.youtube.com/watch?v=jUvDPCxkHIU)\n\n**Working Games:**\n\n * **[ALL WORKING GAMES LIST (Game Porting Toolkit = Windows DX12 Latest Games for Apple Silicon)](https://docs.google.com/spreadsheets/d/1t_E04Qt411f9mEZJVku_OJsEe6XCqZZsdqtjVaMCcgk/edit?usp=sharing)**\n\n *  Cyberpunk 2077\n *  Elden Ring  \n *  Diablo IV \n *  Hogwarts Legacy\n *  Crysis Remastered\n *  Cuphead\n *  Halo 3 (No Online due to Easy Anti-Cheat Compatibility)\n *  Metal Gear Solid V: The Phantom Pain\n *  Final Fantasy VII Remake Intergrade (~50 FPS on High settings at 1080p with M1 Pro.)\n *  God of War (Works somewhat well on M1 Pro (16gb), wouldn't recommend lesser hardware.)\n *  Deep Rock Galactic\n *  Sonic Omens\n *  Sonic P-06\n *  Scarlet Nexus\n *  Dyson Sphere Program (some objects and main character weren't visible before)\n *  Derail Valley (good performance, no missing manuals, and in-game objects for train operation like on CrossOver)\n *  Spider-Man (2018)\n *  Spider-Man Miles Morales - requires Windows version fix.\n *  Warframe - To get installer/launcher working add dwrite (disabled) to library overrides in winecfg.\n *  QUBE 2\n *  Deceive Inc. - works well if launched without EAC.\n *  Risk of Rain 2 (does not require `-disable-gpu-skinning` like Crossover 22.)\n *  Tetris Effect: (Connected - Game window doesn't like retina mode, works otherwise.)\n *  Bloodstained: Ritual of the Night\n \n### System Requirements\n \n   * macOS Sonoma should be used, currently it is in beta. \n   * macOS Ventura causes large numbers of issues with steamwebhelper.exe crashing so it isn't recommended, use the macOS Sonoma beta.\n   * [Visit Apple Developer Downloads site](https://developer.apple.com/downloads), these files are now free to download use for any logged in Apple account.\n       - Search for Command Line Tools for Xcode 15 beta and download the dmg file, then install it.\n       - If you have an old version Xcode installed, remove it.\n       - Search for Game Porting Toolkit and download it. Open the dmg file and then run the pkg.\n       \n### Using Homebrew\n\n**Note:** if you have ever installed Homebrew before, then it is advisable to remove arm64 Homebrew as this can interfere with this build process. Either use a Homebrew uninstall script or delete the folder ```/opt/homebrew/bin```.\n\nOpen Terminal (search in Spotlight on macOS).\n\n**Install Rosetta:**\n\n```softwareupdate --install-rosetta```\n\nEnter an x86_64 shell to continue the following steps in a Rosetta environment. All subsequent commands should be run within this shell.\n\n```arch -x86_64 zsh```\n\nInstall the x86_64 version of Homebrew if you don't already have it.\n\n```/bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\"```\n\n**Make sure the brew command is on your path:**\n\n```which brew```\n\n**If this command does not print ```/usr/local/bin/brew```, you should use this command:**\n\n```export PATH=/usr/local/bin:${PATH}```\n\n### Build \n\n**Run this command to download Apple tap:**\n\n```brew tap apple/apple http://github.com/apple/homebrew-apple```\n\nInstall the game-porting-toolkit formula. This formula downloads and compiles several large software projects. How long this takes will depend on the speed of your computer. It can take over 1 hour to complete depending on the speed of your Mac.\n\n```brew -v install apple/apple/game-porting-toolkit```\n\nIf during installation you see an error such as “Error: game-porting-toolkit: unknown or unsupported macOS version: :dunno”, your version of Homebrew doesn’t have macOS Sonoma support. Update to the latest version of Homebrew and try again.\n\n```brew update brew -v install apple/apple/game-porting-toolkit```\n\n### Wine prefix \n\nA Wine prefix contains a virtual C: drive. You will install the toolkit and your game into this virtual C: drive. Run the following command to create a new Wine prefix named my-game-prefix in your home directory.\n\n```WINEPREFIX=~/my-game-prefix `brew --prefix game-porting-toolkit`/bin/wine64 winecfg```\n\n   * A “Wine configuration” window should appear on your screen.\n   * Change the version of Windows to Windows 10.\n   * Choose Apply and then OK to exit winecfg.\n\nIf the “Wine configuration” window does not appear, and no new icon appears in the Dock, verify that you have correctly installed the x86_64 version of Homebrew as well as the game-porting-toolkit formula.\n\n**Preparing the toolkit**\n\nMake sure the Game Porting Toolkit dmg downloaded earlier is mounted at ```/Volumes/Game Porting Toolkit-1.0```. Use this script to copy the Game Porting Toolkit library directory into Wine’s library directory.\n\n```ditto /Volumes/Game\\ Porting\\ Toolkit-1.0/lib/ `brew --prefix game-porting-toolkit`/lib/```\n\n**Put the 3 scripts from the Game Porting Toolkit DMG into here /usr/local/bin using this command:**\n\n```cp /Volumes/Game\\ Porting\\ Toolkit*/gameportingtoolkit* /usr/local/bin```\n\n### Steam install\n\n\u003ch3 align=\"center\"\u003e\n \u003cimg src=\"https://github.com/mikeroyal/Apple-Silicon-Guide/assets/45159366/7c41f9fc-6195-44ac-9398-d1d32da78749\"\u003e\n  \u003cbr /\u003e\n \n\u003c/h3\u003e\n\nGo to Steam website and download the Windows version of [Steam](https://cdn.cloudflare.steamstatic.com/client/installer/SteamSetup.exe) and place in your Downloads folder.\n\n**Install Steam**\n\n```gameportingtoolkit ~/my-game-prefix ~/Downloads/SteamSetup.exe```\n\n**Run Steam**\n\n```gameportingtoolkit ~/my-game-prefix 'C:\\Program Files (x86)/Steam/steam.exe'```\n\nLog into Steam A common issue is that Steam will present with a blank black window.\n\nAlternate way of launching Steam (after installing):\n\n```MTL_HUD_ENABLED=1 WINEESYNC=1 WINEPREFIX=~/my-game-prefix /usr/local/Cellar/game-porting-toolkit/1.0/bin/wine64 'C:\\Program Files (x86)/Steam/steam.exe'```\n\nIf this continues then close the Terminal window and then re-open and try again, repeat until the login screen opens. Now you should be able to download and launch Windows games through Steam.\n\n## Epic/Heroic Games and GOG support\n\n\u003ch3 align=\"center\"\u003e\n \u003cimg src=\"https://github.com/mikeroyal/Apple-Silicon-Guide/assets/45159366/992edc00-18e8-4f51-ab7b-0f047ffb6f84\"\u003e\n  \u003cbr /\u003e\n \n\u003c/h3\u003e\n\nThis is particularly useful because as it currently, the real Epic Games Launcher fails to install under the Game Porting Toolkit. Heroic supports Epic and GOG.com games.\n\n   * Install the native [macOS Heroic Games Launcher](https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/releases) or from Homebrew.\n   * Open Heroic, and log into your Epic Games and/or GOG.com account.\n   * Go to the \"Wine Manager\" and install a numbered version of Wine, such that it won't auto update- we are going to modify it. \n   * At the time of writing this, the newest numbered version of Wine-Crossover is ```Wine-Crossover-Wine-22.1.0```\n   * Press the folder icon that appears after installing it to open the directory containing Heroic's Wine installations.\n   * Right-click on the version of Wine you just installed and press \"Show Package Contents\".\n   * Open this directory in the Terminal.\n       * If you have **\"OpenInTerminal\"** this is one button, otherwise press **\"Show Path Bar\"** and navigate where it says with **\"cd\"**.\n       * It should be something like ```cd ~/Library/Application\\ Support/heroic/tools/wine/Wine-crossover-wine-22.1.0```.\n\n   ```cd Contents/MacOS```\n\n   **Remove the existing Wine:**\n\n   ```rm wine```\n\n  ###  Create a symlink to Game Porting Toolkit's Wine\n        \n   **If using Game Porting Toolkit Wineprefix:**\n\n   ```ln -s `/usr/local/bin/brew --prefix game-porting-toolkit`/bin/wine64 wine```\n\n   **If using Whisky:**\n\n   ```ln -s /Applications/Whisky.app/Contents/Resources/Libraries/Wine/bin/wine64 wine```\n      \n   ``` cd ../Resources```\n\n  **Remove the existing Wine:**\n\n  ```rm -rfv wine```\n\n   ### Create a symlink to Game Porting Toolkit's Wine\n    \n   **If using Game Porting Toolkit Wineprefix:**\n\n   ```ln -s `/usr/local/bin/brew --prefix game-porting-toolkit` wine```\n\n   **If using Whisky:**\n\n   ```ln -s /Applications/Whisky.app/Contents/Resources/Libraries/Wine wine```\n\n   * You are now done with Terminal. Install any games you want to try playing.\n   * Select the game you want to play, and press the settings button in the top-right.\n   * Make sure the version of Wine you just downloaded and modified is selected.\n   * Make sure your Game Porting Toolkit Wine Prefix is selected. If you followed Apple's guide this is ```/Users/you/my-game-prefix```.\n   * If you Open the \"Other\" section you can also add any environment variables you want like ```WINEESYNC=1\"``` and ```\"MTL_HUD_ENABLED=1\"```\n   * Close the settings and try running the game.\n \n \n## Battle.net\n\n\u003ch3 align=\"center\"\u003e\n \u003cimg src=\"https://github.com/mikeroyal/Apple-Silicon-Guide/assets/45159366/fc90046c-797d-47cb-9073-25af1d847660\"\u003e\n  \u003cbr /\u003e\n \n\u003c/h3\u003e\n\nPlease download the [Windows version of Battle.net](https://download.battle.net/en-gb/?platform=windows).\n\n**Make a new Wineprefix for Battle.net - we will refer to this as battle-net from now:**\n\n```WINEPREFIX=~/battle-net `brew --prefix game-porting-toolkit`/bin/wine64 winecfg```\n\n  *  A “Wine configuration” window should appear on your screen.\n  *  Change the version of Windows to Windows 10.\n  *  Choose Apply and then OK to exit winecfg.\n\nRun Battle.net launcher\n\n```gameportingtoolkit ~/battle-net ~/Downloads/Battle.net-Setup.exe```\n\nPlease be aware that there is an issue launching Battle.net once installed, the only current way to re-login is to 'install' the launcher again.\n\nStart individual game without the launcher using this command:\n\n```arch -x86_64 gameportingtoolkit-no-hud ~/battle-net 'C:\\Program Files (x86)\\Diablo IV\\Diablo IV Launcher.exe'```\n\n### Launching individual game\n\nOpen your Wine prefix’s virtual C: drive in Finder ```(open ~/my-game-prefix/drive_c)``` and copy your game into an appropriate subdirectory.\n\n**A. Standard launching**\n\n```gameportingtoolkit ~/my-game-prefix 'C:\\Program Files\\MyGame\\MyGame.exe'```\n\nThis launches the given Windows game binary with a visible extended Metal Performance HUD and filters logging to output from the Game Porting Toolkit.\n\n**B. Launching without a HUD**\n\n```gameportingtoolkit-no-hud ~/my-game-prefix 'C:\\Program Files\\MyGame\\MyGame.exe'```\n\n**C. Launching with Wine ESYNC disable**\n\n```gameportingtoolkit-no-esync ~/my-game-prefix 'C:\\Program Files\\MyGame\\MyGame.exe'```\n\n### Logging \n\nThe provided ```bin/gameportingtoolkit*``` scripts can be copied onto your path to facilitate different forms of logging and launching. You can run these scripts from any shell; you don’t need to switch to the Rosetta environment first.\n\nLogging output will appear in the Terminal window in which you launch your game as well as the system log, which can be viewed with the Console app found in Applications ▸ Utilities. Log messages from the Game Porting Toolkit are prefixed with D3DM. By default the gameportingtoolkit* scripts will filter to just the D3DM-prefixed messages.\nTroubleshooting • Link\n\n### Steam login black screen\n\nClose the Terminal window and then reopen and retry the command, repeat several times.\n\nAlternate way of launching Steam (after installing):\n\n```MTL_HUD_ENABLED=1 WINEESYNC=1 WINEPREFIX=\u003cpath to the Wine bottle you set up\u003e /usr/local/Cellar/game-porting-toolkit/1.0/bin/wine64 'C:\\Program Files (x86)/Steam/steam.exe'```\n\nIf still not working then try using CrossOver and create a Steam bottle, then redirect this WINEPREFIX to that bottle:\n\n```WINEPREFIX=\"/Users/[username]/Library/Application Support/CrossOver/Bottles/Steam/\"```\n\n**Steam crashes straight after opening:** Disconnect any external monitors.\n\n**Battle.net launcher won't re-launch:** Re-install the launcher to reopen, no other fix at the moment.\n\nGame won’t run because it thinks the version of Windows is too old. Some games detect specific minimum versions of Windows and need to be updated. Use this script to update your wineprefix with build 19042 which should work for most games e.g. Spider-Man Remastered.\n\n```WINEPREFIX=~/my-game-prefix `brew --prefix game-porting-toolkit`/bin/wine64 reg add 'HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows NT\\CurrentVersion' /v CurrentBuild /t REG_SZ /d 19042 /f```\n\n```WINEPREFIX=~/my-game-prefix `brew --prefix game-porting-toolkit`/bin/wine64 reg add 'HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows NT\\CurrentVersion' /v CurrentBuildNumber /t REG_SZ /d 19042 /f```\n\n```WINEPREFIX=~/my-game-prefix `brew --prefix game-porting-toolkit`/bin/wineserver -k```\n\n**steamwebhelper.exe crashes**\n\nThis is caused by Steam being run through macOS Ventura or below, upgrade to macOS Sonoma.\n\n**Game won't run and crashes with an invalid instruction**\n\n**Invalid instruction** crashes are often (but not always) caused when Rosetta 2 is unable to translate AVX/AVX2 instructions. You may be able to recompile a version of your game without AVX/AVX2 instructions in order to evaluate its potential on Apple Silicon with the Game Porting Toolkit when you hit this error. When porting your code natively to Apple Silicon, NEON instructions are a high-performance replacement for AVX/AVX2.\n\n**Game won't run because its anti-cheat or DRM software is incompatible with Wine translation.**\n\nYou may be able to rebuild a custom version of your game in your Windows development environment with anti-cheat or DRM disabled for your own evaluation purposes. When porting your code natively to Apple Silicon and macOS, contact your anti-cheat or DRM provider—most have native Apple Silicon solutions for your native build.\n\n**Game won’t run because it requires Mono, .NET, or the MSVCRT runtime.**\n\nThe game porting toolkit’s evaluation environment does not pre-install these runtime support packages. If your game makes use of one of these packages, consider searching for and downloading appropriate installers (.exe or .msi) and installing them to your evaluation environment. Additional runtime installers can be run on your environment by just launching the installer and following its installation instructions:\n\n```WINEPREFIX=~/my-game-prefix `brew --prefix game-porting-toolkit`/bin/wine64 \u003csome-installer.exe\u003e```\n\nAnd .MSI packages can be installed by launching the Windows uninstaller application and choosing to install a downloaded .msi package:\n\n```WINEPREFIX=~/my-game-prefix `brew --prefix game-porting-toolkit`/bin/wine64 uninstaller```\n\n**Controller issues**\n\nIssues may be fixed by enrolling into the Steam beta. \n\n\n## Apple AR and Vision Pro Headset\n\n[Back to the Top](#table-of-contents) \n\n**Important Terms to Know**\n\n * [Augmented Reality (AR)](https://en.wikipedia.org/wiki/Augmented_reality) is an interactive experience of a real-world environment where the objects that reside in the real world are enhanced by computer-generated perceptual information.\n * [Virtual Reality (VR)](https://en.wikipedia.org/wiki/Virtual_reality) is a simulated experience that can be similar to or completely different from the real world. The applications of virtual reality include entertainment (video games), education (medical or military training) and business (virtual meetings).\n * [Mixed Reality (MR)](https://en.wikipedia.org/wiki/Mixed_reality) is the merging of real and virtual worlds to produce new environments and visualizations, where physical and digital objects co-exist and interact in real time.\n * [Extended Reality (XR)](https://en.wikipedia.org/wiki/Extended_reality) is a concept referring to all real-and-virtual combined environments and human-machine interactions generated by computer technology and wearables. Including augmented reality (AR), mixed reality (MR) and virtual reality (VR).\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://github.com/mikeroyal/Apple-Silicon-Guide/assets/45159366/1eb8474d-ed6b-4c57-a88c-6879db9df78b\"\u003e\n  \u003cbr /\u003e\n Vision Pro Headset. Image Credit: Apple\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://github.com/mikeroyal/Apple-Silicon-Guide/assets/45159366/4fa96b25-effe-4dc2-a5c9-3c43bcdda285)\"\u003e\n  \u003cbr /\u003e\n Vision Pro Headset with battery pack. Image Credit: Apple\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://github.com/mikeroyal/Apple-Silicon-Guide/assets/45159366/425ff971-6fa4-4ba9-a594-932367662b23)\"\u003e\n\u003cbr /\u003e\nR1 \u0026 M2 chips in the Vision Pro Headset. Image Credit: Apple\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://github.com/mikeroyal/Apple-Silicon-Guide/assets/45159366/e1f5d708-87a8-4b45-bfc9-03860cb6ebea\"\u003e\n  \u003cbr /\u003e\n visionOS. Image Credit: Apple\n\u003c/p\u003e\n\n* [visionOS](https://www.apple.com/newsroom/2023/06/introducing-apple-vision-pro/) is Apple's iOS-like operating system for their upcoming AR/VR (Augmented Reality/Virtual Reality) headset powered by Apple's Silicon M2 and R1 chips. It will have an App Store with apps that include mixed-reality versions of their core Apple apps like **[Messages](https://support.apple.com/messages), [FaceTime](https://support.apple.com/facetime), [Maps](https://www.apple.com/maps/), and AR/VR games from [Apple Arcade](https://www.apple.com/apple-arcade/)**. Along with features such as [Memojis](https://apps.apple.com/us/story/id1445637997) and [SharePlay](https://support.apple.com/guide/iphone/use-shareplay-to-watch-and-listen-together-iphb657eb791/ios) that could be central to the user experience. \n \n **visionOS Resources**\n \n * [visionOS SDK](https://developer.apple.com/visionos/)\n * [Learn about visionOS](https://developer.apple.com/visionos/learn/)\n * [Vision Pro compatibility evaluations (available July 2023)](https://d*eveloper.apple.com/visionos/work-with-apple/)\n * [Vision Pro developer labs (available July 2023)](https://developer.apple.com/visionos/work-with-apple/)\n * [Vision Pro developer kit (available July 2023)](https://developer.apple.com/visionos/work-with-apple/)\n \n\n **Apple Vision Pro Headset Specs:**\n   \n   * Powered by an M2 chip and **R1 chip(dedicated toward real-time sensor processing for the 12 cameras and 5 sensors on the Vision Pro headset)**.\n   * High-resolution 4K micro OLED displays.\n   * Display refresh rate of [90Hz and supports a special 96Hz mode for 24fps video](https://developer.apple.com/videos/play/wwdc2023/10071/?time=143).\n   * Display Pixel Size will be between 3000 ppi-4000 ppi.\n   * Display offers a brightness of 5,000 nits.\n   * The color gamut is quoted as DCI \u003e 97% DCI.\n   * 96W USB-C power adapter.\n   * A USB-C port for data transfer.\n   * A proprietary magnetic port(MagSafe) to attach the [battery pack](https://www.amazon.com/Apple-MJWY3AM-A-MagSafe-Battery/dp/B099BWY7WT).\n   * Expected battery life of about **2 hours per pack**.\n   * 12 optical cameras and 5 sensors for tracking movements, mapping the environment, and projecting visual experiences. \n   * WiFi 6E, which adds 6GHz spectrum to the 2.4GHz \u0026 5GHz bands for increased bandwidth and less device interference.\n\nOLEDoS (OLED on Silicon) is a display panel that typically has a diagonal length of less than 1 inch and meets the 3000 ppi-4000 ppi resolution criteria of AR/VR device displays. Existing OLED displays use Low-Temperature-Poly-Silicon (LTPS) or Oxide TFT based on glass substrates. OLEDoS uses silicon-wafer-based CMOS substrates. Using silicon substrates, ultra-fine circuit structures typically used in semiconductor processes can be reproduced, which in turn lead to the creation of ultra-high-resolution OLEDs when organic matter is deposited on them.\n\n **LG and Sony OLEDoS Display Specs:**\n \n   * High-resolution 4K micro OLED displays.\n   * Display Pixel Size will be between 3000 ppi-4000 ppi.\n   * Display offers a brightness of 5,000 nits.\n   * The color gamut is quoted as DCI \u003e 97% DCI.\n\n### LG OLEDoS\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://user-images.githubusercontent.com/45159366/194017317-b1dbda21-5935-47ef-8843-137cc5540b60.png\"\u003e\n  \u003cbr /\u003e\n OLEDoS: Solution for ultra-high resolution\n\u003c/p\u003e\n\nCredit: [LG](https://www.lgdisplay.com/eng/technology/oled)\n\n### Sony OLEDoS\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://user-images.githubusercontent.com/45159366/194017320-f7631398-a661-401d-9e6f-77d061c8d303.png\"\u003e\n  \u003cbr /\u003e\n  Specs for OLED and OLEDoS\n\u003c/p\u003e\n\nCredit: [Sony](https://www.sony.com/en/SonyInfo/research/technologies/OLED_microdisplay/)\n\n\n#  Unreal Engine Development\n[Back to the Top](https://github.com/mikeroyal/Game-Console-Dev-Guide#table-of-contents)\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/146693067-3b7e36f9-efec-4759-9434-713f13155723.png\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\n[Unreal Engine](https://www.unrealengine.com/unreal-engine-5) is a game engine developed by Epic Games with the world's most open and advanced real-time 3D creation tool. Continuously evolving to serve not only its original purpose as a state-of-the-art game engine, today it gives creators across industries the freedom and control to deliver cutting-edge content, interactive experiences, and immersive virtual worlds. \n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/162538256-a3390573-88b8-4925-a92e-70a56da951b3.png\"\u003e\n  \u003cbr /\u003e\n  Unreal Engine 5 with Big City Sample Project\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/146693087-56cfbc91-3398-425c-90a1-6a2479ca3fce.png\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\n Unreal Engine Twinmotion. Source: [Unreal Engine](https://www.unrealengine.com/en-US/blog/twinmotion-2021-1-is-here)\n\n \u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/180627376-15ab099e-f433-4e0b-bf29-3ebf48b95fe8.png\"\u003e\n  \u003cbr /\u003e\n  Unreal Engine 5 Project browser\n\u003c/p\u003e\n\n \u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/180627379-afa5a3d7-c50a-4d9f-94c8-3b14d39cea36.png\"\u003e\n  \u003cbr /\u003e\n  Unreal Engine 5 Vehicle Project Demo\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/172468555-e7f7b4d6-1ba0-4f37-b3dd-f6b17c90b0f1.png\"\u003e\n  \u003cbr /\u003e\n  Unreal Engine Marketplace\n\u003c/p\u003e\n\n\n## Unreal Engine Tools\n[Back to the Top](https://github.com/mikeroyal/Game-Console-Dev-Guide#table-of-contents)\n\n[Blueprint Visual Scripting](https://docs.unrealengine.com/en-US/Engine/Blueprints/index.html) is a complete gameplay scripting system in Unreal Engine based on the concept of using a node-based interface to create gameplay elements from within Unreal Editor. As with many common scripting languages, it is used to define object-oriented (OO) classes or objects in the engine.\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/180627381-f123e873-909c-410a-887e-51b2ba659439.png\"\u003e\n  \u003cbr /\u003e\n Blueprint Visual Scripting UI \n\u003c/p\u003e\n\n[Datasmith](https://www.unrealengine.com/en-US/datasmith) is a collection of tools and plugins that bring entire pre-constructed scenes and complex assets created in a variety of industry-standard design applications into Unreal Engine.\n\n[Chaos Physics](https://docs.unrealengine.com/4.27/en-US/InteractiveExperiences/Physics/ChaosPhysics/Overview/) is a Beta feature that is the light-weight physics simulation solution used in Fortnite, and it includes the following major features.\n\n   - RBAN (Rigid Body Animation Nodes)\n\n   - Destruction\n\n   - Cloth\n\n   - Ragdoll\n\n   - Vehicles\n\n[Niagara VFX System](https://docs.unrealengine.com/4.27/en-US/RenderingAndGraphics/Niagara/) is one of two tools you can use to create and adjust visual effects (VFX) inside Unreal Engine 4 (UE4). Before Niagara, the primary way to create and edit visual effects in UE4 was to use [Cascade](https://docs.unrealengine.com/4.27/en-US/RenderingAndGraphics/ParticleSystems). It has many of the same of particle manipulation methods that Cascade offers, the way you interact and build visual effects with Niagara is vastly different.\n\n[MetaHuman Creator](https://www.unrealengine.com/en-US/metahuman-creator) is a free cloud-based app that empowers anyone to create photorealistic digital humans, complete with hair and clothing, in minutes. MetaHumans come fully rigged and ready to animate in your Unreal Engine projects.\n\n[Twinmotion](https://www.twinmotion.com/en-US) is a real-time 3D immersion software that produces high-quality images, panoramas and standard or 360° VR videos in seconds. Developed for architecture, construction, urban planning and landscaping professionals.\n\n[Bridgew by Quixel](https://www.unrealengine.com/en-US/bridge) is a gateway to create a world of 3D content right inside the Unreal Engine. it includes Megascans—the world's largest library of AAA, cinema-quality assets based on real-world scan data.\n\n[Lumen](https://docs.unrealengine.com/5.0/en-US/RenderingFeatures/Lumen/TechOverview/) is an Unreal Engine 5 feature that uses multiple ray tracing methods to solve Global Illumination and Reflections. Screen traces are done first, followed by a more reliable method. It uses Software Ray Tracing through Signed Distance Fields by default, but can achieve higher quality on supporting video cards when Hardware Ray Tracing is enabled.\n\n[Nanite](https://docs.unrealengine.com/5.0/en-US/RenderingFeatures/Nanite/) is Unreal Engine 5's new virtualized geometry system which uses a new internal mesh format and rendering technology to render pixel scale detail and high object counts. It intelligently does work on only the detail that can be perceived and no more.\n\n[Procedural Content Generation Framework (PCG)](https://docs.unrealengine.com/5.2/en-US/procedural-content-generation--framework-in-unreal-engine/) is a toolset for creating your own procedural content inside Unreal Engine. It provides artists and designers the ability to build fast, iterative tools and content of any complexity ranging from asset utilities, such as buildings or biome generation, up to entire worlds. \n\n[Unreal Engine's VCam system](https://docs.unrealengine.com/5.2/en-US/virtual-cameras-in-unreal-engine/) is a Cine Camera in Unreal Engine that uses a modular component system to manipulate camera data and output the final results to a variety of external output devices. In addition, the Virtual Camera system provides its functionality while in the editor and during Play In Editor (PIE) or Standalone Game mode. \n\n[PolyEd (PolyGroup Edit)](https://docs.unrealengine.com/5.2/en-US/polymodel-category-in-unreal-engine/#polygroupedit) is a tool that includes a suite of operations for editing a mesh with PolyGroups. Common operations such as Extrude, Bevel, Weld, and Bridge are available. Also included are operations that only work with structured PolyGroups, such as Insert Edge Loop and edge loop/ring selection. \n \n[PolyDef](https://docs.unrealengine.com/5.2/en-US/polymodel-category-in-unreal-engine/#polygroupdeformation) is a tool that dynamically alters the shape of a mesh through its PolyGroups. Deformation is an efficient way to reshape a mesh quickly and create organic geometry. \n\n[nDisplay](https://docs.unrealengine.com/5.2/en-US/ndisplay-overview-for-unreal-engine/) is a tool in Unreal Engine that describes how multiple computers work together in an nDisplay rendering network.\n\n[Unreal Engine Marketplace](https://unrealengine.com/marketplace/en-US/store) is Unreal Engine's Store that has a library Of Textures, Models, Animations, Tutorials, and More for creating amazing 3D projects and games.\n\n[UnrealBuildTool (UBT)](https://docs.unrealengine.com/5.0/en-US/ProductionPipelines/BuildTools/UnrealBuildTool) is a tool that manages the process of building UE4 source code across a variety of build configurations.\n\n[UnrealHeaderTool (UHT)](https://docs.unrealengine.com/5.0/en-US/ProductionPipelines/BuildTools/UnrealHeaderTool) is a custom parsing and code-generation tool supporting the UObject system.\n\n[AutomationTool](https://docs.unrealengine.com/4.27/en-US/ProductionPipelines/BuildTools/AutomationTool) is a generic system used to automate processes, including testing and building games.\n\n[Proxy Geometry Tool](https://docs.unrealengine.com/5.0/en-US/TestingAndOptimization/ProxyGeoTool/) is a tool-set that was developed as a way to increase your Unreal Engine 4 (UE4) project's performance while keeping the visual quality of your project uneffected.\n\n[Quixel Megascans](https://quixel.com/megascans) is a massive online scan library of high-resolution, consistent PBR calibrated surface, vegetation and 3D scans, also including desktop applications for managing, mixing and exporting your downloaded scan data.\n\n[Replay System](https://docs.unrealengine.com/5.0/en-US/TestingAndOptimization/ReplaySystem/) is a tool which can record gameplay for later viewing. This feature is available in all games, from live, multiplayer games played on dedicated servers, to single-player games, and even including Play-In-Editor sessions. At a high level, the Replay system works by using a DemoNetDriver to read data drawn from the built-in replication system, similar to how a NetDriver operates in a live, networked gameplay environment.\n\n[Take Recorder](https://docs.unrealengine.com/5.0/en-US/record-gameplay-in-unreal-engine/) is a tool that enables the fast iteration of recording performances and quickly reviewing previous takes for virtual production workflows. You can easily record animations from motion capture linked to characters in the level, as well as actual Live Link data for future playback. \n\n[Cesium for Unreal](https://cesium.com/cesium-for-unreal/) is a tool that brings the 3D geospatial ecosystem to Unreal Engine. By combining a high-accuracy full-scale WGS84 globe, open APIs and open standards for spatial indexing such as 3D Tiles, and cloud-based real-world content from Cesium ion with Unreal Engine, this project enables a new era of 3D geospatial software.\n\n[Unreal Engine Live-streaming Toolkit](https://offworld.live/products/unreal-engine-live-streaming-toolkit) is a Live-streaming Toolkit for  video, alpha and audio (Viewport, Cinecam, 360 Camera) via RTMP/ RTSP/ SRT/ NDI/ Spout/ Virtual Webcam plus direct display and window capture. [Available in Unreal Marketplace](https://www.unrealengine.com/marketplace/en-US/product/directx-12-livestream-to-spout-obs-no-capture-card-ndi-required)\n\n[HttpGPT](https://github.com/lucoiso/UEHttpGPT/releases) is an Unreal Engine 5 plugin that facilitates integration with OpenAI's GPT based services (ChatGPT and DALL-E) through asynchronous REST requests, making it easy for developers to communicate with these services. It also includes Editor Tools to integrate Chat GPT and DALL-E image generation directly in the Engine.\n\n[Substance 3D](https://substance3d.adobe.com/plugins/substance-in-unreal-engine/) is a plugin that enables the use of Substance materials directly in Unreal Engine 5 and Unreal Engine 4. Whether you are working on games, visualization and or deploying across mobile, desktop, or XR, Substance delivers a unique experience with optimized features for enhanced productivity. The runtime currently works for Windows, Mac, and Linux.\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/229640938-787dda6c-c50b-45e6-9431-9a0b585d6475.jpeg\"\u003e\n  \u003cbr /\u003e\n  Substance 3D\n\u003c/p\u003e\n\nImage Credit: [Adobe](https://substance3d.adobe.com/plugins/substance-in-unreal-engine/)\n\n## Unreal Engine Learning Resources\n[Back to the Top](https://github.com/mikeroyal/Game-Console-Dev-Guide#table-of-contents)\n\n* [How to migrate your Unreal Engine 4 projects to Unreal Engine 5 Early Access quickly and smoothly](https://docs.unrealengine.com/5.0/en-US/MigrationGuide/)\n\n* [Unreal Engine Documentation](https://docs.unrealengine.com/en-US/)\n\n* [Unreal Engine Forums](https://forums.unrealengine.com/)\n\n* [Setting Up Visual Studio for Unreal Engine](https://docs.unrealengine.com/en-us/Programming/Development/VisualStudioSetup)\n\n* [Unreal Engine Performance and Profiling](https://docs.unrealengine.com/4.27/en-US/TestingAndOptimization/PerformanceAndProfiling/)\n\n* [Unreal Engine C++ API Reference](https://docs.unrealengine.com/4.27/en-US/API/index.html)\n\n* [Unreal Engine Blueprint API Reference](https://docs.unrealengine.com/4.27/en-US/BlueprintAPI/index.html)\n\n* [Unreal Engine Python API Reference](https://docs.unrealengine.com/4.27/en-US/PythonAPI/index.html)\n\n* [Unreal Engine Authorized Training Program](https://www.unrealengine.com/en-US/training-partners)\n\n* [Unreal Engine for education](https://www.unrealengine.com/en-US/education/)\n\n* [Unreal Engine Training \u0026 Simulation](https://www.unrealengine.com/en-US/industry/training-simulation)\n\n* [Unreal Engine | NVIDIA Developer](https://developer.nvidia.com/unrealengine)\n\n* [Autodesk for Games](https://www.autodesk.com/campaigns/autodesk-for-games)\n\n* [Getting Started with DirectX 12 Ultimate](https://devblogs.microsoft.com/directx/directx-12-ultimate-getting-started-guide/)\n\n* [Getting Started with Vulkan](https://www.khronos.org/vulkan/)\n\n* [Getting Started with Apple Metal](https://developer.apple.com/metal/)\n\n\n# Unity Development\n[Back to the Top](https://github.com/mikeroyal/Game-Console-Dev-Guide#table-of-contents)\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/147710942-5da4fef2-5525-4942-98bc-81421b2144e5.png\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\n[Unity](https://unity.com) is a cross-platform game development platform. Unity can be used to build high-quality 3D and 2D games, deploy them across mobile, desktop, VR/AR, consoles or the Web, and connect with loyal and enthusiastic players and customers. Checkout the [Unity Manual](https://docs.unity3d.com/Manual/UnityOverview.html) to get started on your Unity projects.\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/146693059-97d5428c-cf3c-48f4-bb29-d35e4044d1d9.png\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\nUnity Terrain project. Source: [Unity](https://blog.unity.com/technology/evolving-the-unity-editor-ux)\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/146693060-93465a17-9ae8-48aa-8d4b-6eee3e05b756.png\"\u003e\n  \u003cbr /\u003e\n  Unity Hub Installs\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/147710657-16a6e35a-c78e-408b-a836-45b21a342f11.png\"\u003e\n  \u003cbr /\u003e\n  Unity Asset Store\n\u003c/p\u003e\n\n## Unity Tools\n[Back to the Top](https://github.com/mikeroyal/Game-Console-Dev-Guide#table-of-contents)\n\n[Unity Hub](https://unity.com/unity-hub) is a tool that helps manage multiple installations of the Unity Editor, create new projects, and access your work.\n\n[Unity Asset Store](https://assetstore.unity.com)is Unity's Store that has a library Of Textures, Models, Animations, Tutorials, and More for creating amazing 3D projects and games.\n\n[Unity Plus](https://store.unity.com/products/unity-plus) is a version of Unity for small businesses and serious hobbyists get more functionality and training resources to power up their projects.\n\n[Unity Pro](https://store.unity.com/products/unity-pro) is a version of Unity to create and operate amazing applications and immersive experiences with a complete solution for professionals across industries.\n\n[Unity Enterprise](https://store.unity.com/products/unity-enterprise) is a version of Unity for large teams creating at scale, Unity Enterprise delivers comprehensive technology, resources, and support that fuel innovation, reduce risk, and power your success.\n\n[Unity XR](https://docs.unity3d.com/Manual/XR.html) is a plug-in framework that enables XR providers to integrate with the Unity engine and make full use of its features.\n\n[Unity MARS](https://unity.com/products/unity-mars) is a tool that helps you create augmented reality (AR) apps with better workflows and purpose built authoring tools.\n\n[Unity Build Server](https://unity.com/products/unity-build-server) is a tool that offloads your Unity project builds to network hardware, empowering your creative team to iterate more, produce higher quality products, and ship on time.\n\n[Unity Teams](https://unity.com/products/unity-teams) is a tool that helps you and your team create together, faster. It makes it simple to save, share and sync your Unity projects with anyone.\n\n[Unity Automated QA](https://unity.com/products/automated-qa) is a tool that shortens the development feedback loop with on-demand tests that anyone on your team can create and run without writing code.\n\n[Unity Simulation Pro](https://unity.com/products/unity-simulation-pro) is a tool that unlocks the true power of scalable simulations through a simulation-optimized version of the Unity runtime.\n\n[Unity Forma](https://unity.com/products/unity-forma) is a tool that brings the power of real-time 3D to your marketing. It turns 3D product data into interactive 3D configurators, stunning images and more.\n\n[Unity Reflect](https://unity.com/products/unity-reflect) is a tool that helps create an experience immersive and collaborative real-time 3D environments, including in AR and VR, for better decision-making across your entire project lifecycle.\n\n[Unity Reflect Develop](https://unity.com/products/unity-reflect-develop) is a tool that builds your own custom applications to address any problem across the entire building and infrastructure lifecycle for internal or commercial deployment.\n\n[Unity ArtEngine](https://unity.com/products/unity-artengine) is Unity’s material authoring tool. Harnessing the power of assisted creation, the tool helps creators accelerate production pipelines.\n\n[Unity Machine Learning Agents](https://unity.com/products/machine-learning-agents) is a tol that helps train and embed intelligent agents by leveraging state-of-the-art deep learning technology.\n\n[Unity Essential Success ](https://unity.com/products/unity-essential-success) is a tool that is your dedicated Support Coordinator and experienced Unity engineers are ready to help.\n\n[Bolt Visual scripting](https://unity.com/products/unity-visual-scripting) is a tool in Unity empowers creators to develop gameplay mechanics or interaction logic with a visual, graph-based system, instead of writing traditional lines of code.\n\n[VisualLive](https://unity.com/products/visuallive) is a tool for construction professionals can visualize designs and collaborate in real-time by overlaying large BIM and CAD files onto jobsites using AR.\n\n[Professional Services: Optimization Accelerator](https://unity.com/products/optimization-accelerator) is atool that boosts your project and your productivity in a four-day sprint with hands-on guidance from a Unity engineer. It will help you analyze performance problems, test solutions, and implement improvements.\n\n[Odin Inspector Enterprise](https://unity.com/products/odin) is a tool that optimizes your project workflows and save thousands of development hours.\n\n[Multiplay](https://unity.com/products/multiplay) is a resilient, multicloud hybrid server hosting and matchmaking platform without having to build and maintain your own infrastructure. Proven at scale in some of the world’s biggest games.\n\n[Vivox](https://unity.com/products/vivox) is a voice and text comms tool that boosts player engagement, retention rates and create immersive multiplayer experiences by leveraging an easy-to-implement, feature-rich voice and text chat service.\n\n[Relayᴮᴱᵀᴬ](https://unity.com/products/relay) is a tool that provides a great multiplayer gaming experiences with Unity’s Relay service that's now in open beta.\n\n[Lobbyᴮᴱᵀᴬ](https://unity.com/products/lobby) is a tool that connects your players for great multiplayer gaming experiences with Lobby that's now in Open Beta.\n\n[Cloud Codeᴮᴱᵀᴬ](https://unity.com/products/cloud-code) is a tool that runs your game logic in the cloud as serverless functions and interact with other backend services.\n\n[Cloud Saveᴮᴱᵀᴬ](https://unity.com/products/cloud-save) is a tool that builds better player experiences by storing game data to the cloud.\n\n[Furioos](https://unity.com/products/furioos) is a tool that streams fully interactive 3D experiences from Unity, other real-time 3D platforms, and Windows applications with peak visual quality in any web browser.\n\n[OctaneRender® for Unity](https://unity.com/products/otoy-octanerender) is a tool that lets you harness physically accurate rendering directly in Unity and compose gorgeous, cinematic-quality scenes with OctaneRender materials and lighting.\n\n[Pacelab WEAVR](https://unity.com/products/weavr) is a tool that provides a complete XR platform that enables any company, in any industry, to develop and manage enterprise-scale immersive training.\n\n[Interact](https://unity.com/products/interact) is a tool that creates advanced real-time, human-centric simulations on any VR configuration for training, visualization, and safety.\n\n[Prespective](https://unity.com/products/prespective) is a tool that helps you design and simulate your machine, factory, or system in Unity real-time 3D. Create common ground among stakeholders and speed up decision processes with improved visualization tools.\n\n[Pixyz](https://unity.com/products/pixyz) is a tool that lets you can quickly import, prep, and optimize your large CAD, mesh and point cloud models for real-time visualizations in Unity.\n\n[Plastic SCM Cloud Edition](https://unity.com/products/plastic-scm) is a tool that makes Collaboration more efficient with a performant, easy-to-use version control system (VCS) made for programmers, artists and designers.\n\n[Backtrace](https://unity.com/products/backtrace) is a game crash management platform that delivers uninterrupted game experiences by automating your response to errors.\n\n[SpeedTree®](https://store.speedtree.com/) is a group of vegetation programming and modeling software products developed and sold by Interactive Data Visualization, Inc. that generates virtual foliage for animations, architecture and in real time for video games and demanding real time simulations. [Unity Technologies acquired SpeedTree in July 2021](https://investors.unity.com/news/news-details/2021/Unity-Acquires-Interactive-Data-Visualization-Inc.-IDV-Creators-of-SpeedTree-Environment-Creation-Suite/default.aspx).\n\n[ParSec](https://parsec.app/) is a the ultimate remote desktop, powerful enough for teams of developers, designers, architects, and engineers to get the job done and work together from anywhere. [Unity Technologies acquired Parsec in August 2021](https://unity.com/our-company/newsroom/unity-enters-agreement-acquire-parsec).\n\n[SyncSketch](https://syncsketch.com) is a collaboration software for visual artists that allows a team to view, review, and provide feedback on each other’s work. It includes support for both 2D and 3D assets as well as video. As of [December 2021 SyncSketch has been acquired by Unity Technologies](https://blog.syncsketch.com/news/sycncsketch-acquired-by-unity/).\n\n[Weta Digital](https://www.wetafx.co.nz/) is a digital visual effects company created by [Peter Jackson](https://www.imdb.com/name/nm0001392/). It produced the digital special effects for Heavenly Creatures and the Lord of the Rings. [Unity Technologies acquired Weta Digital in November 2021](https://unity.com/our-company/newsroom/unity-announces-intent-acquire-weta-digital).\n\n## Unity Learning Resources\n[Back to the Top](https://github.com/mikeroyal/Game-Console-Dev-Guide#table-of-contents)\n\n* [Unity Knowledge Base](https://support.unity.com/hc/en-us) is a library of articles that helps you troubleshoot common problems, whether it’s creating an account, importing assets, or baking a scene.\n\n* [Unity Forum](https://forum.unity.com/)\n\n* [Unity Issue Tracker](https://issuetracker.unity3d.com/)\n\n* [Unity Certifications](https://unity.com/products/unity-certifications)\n\n* [Learn game development with Unity](https://learn.unity.com/courses)\n\n* [Unity Courses, Training, and Lessons on Udemy](https://www.udemy.com/topic/unity/)\n\n* [Learn Unity 3D with Online Courses and Lessons on edX](https://www.edx.org/learn/unity-3d)\n\n* [Unity Certified Programmer Exam Preparation on Coursera](https://www.coursera.org/specializations/unity-certified-programmer)\n\n* [Unity Courses, Training, and Lessons on Coursera](https://www.coursera.org/courses?query=unity\u0026page=3\u0026index=test_skills_update_prod_all_products_term_optimization)\n\n* [Autodesk for Games](https://www.autodesk.com/campaigns/autodesk-for-games)\n\n* [Getting Started with DirectX 12 Ultimate](https://devblogs.microsoft.com/directx/directx-12-ultimate-getting-started-guide/)\n\n* [Getting Started with Vulkan](https://www.khronos.org/vulkan/)\n\n* [Getting Started with Apple Metal](https://developer.apple.com/metal/)\n\n* [Game Design Online Courses from Udemy](https://www.udemy.com/courses/Design/Game-Design/)\n\n* [Game Design Online Courses from Skillshare](https://www.skillshare.com/browse/game-design)\n\n* [Learn Game Design with Online Courses and Classes from edX](https://www.edx.org/learn/game-design)\n\n* [Game Design Courses from Coursera](https://www.coursera.org/courses?query=game%20design)\n\n\n# Getting Started with Godot Engine\n\n[Back to the Top](#table-of-contents)\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/147890939-356a7e63-42d3-448c-9b53-2bc2e412e461.png\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\n[Godot Engine](https://godotengine.org/) is a feature-packed, cross-platform game engine to create 2D and 3D games from a unified interface. It provides a comprehensive set of common tools, so that you can focus on making games without having to reinvent the wheel. Checkout the [Godot Engine Documentation](https://docs.godotengine.org/) for moe info.\n\n * **[If you would like to Donate to the Godot Project](https://www.patreon.com/godotengine)**\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/104788134-3f85e980-5746-11eb-94c4-d97165ee888b.jpeg\"\u003e\n  \u003cbr /\u003e\n  Godot Engine\n\u003c/p\u003e\n\n[Godot Asset Library](https://godotengine.org/asset-library/asset)\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/147890951-0aa968e8-7651-4536-9148-afa40c7fea4f.png\"\u003e\n  \u003cbr /\u003e\n  Godot Asset Library\n\u003c/p\u003e\n\n[GDNative](https://docs.godotengine.org/en/latest/tutorials/scripting/gdnative/what_is_gdnative.html#what-is-gdnative) is a Godot-specific technology that lets the engine interact with native [shared libraries](https://en.wikipedia.org/wiki/Library_(computing)#Shared_libraries) at run-time. You can use it to run native code without compiling it with the engine. GDNative is not a scripting language and has no relation to [GDScript](https://docs.godotengine.org/en/latest/tutorials/scripting/gdscript/gdscript_basics.html#doc-gdscript).\n\n## Godot Engine Tools\n\n[Godot Web Editor](https://editor.godotengine.org/releases/latest/) is a tool that allows you to open and edit your Godot project in the web browser.\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://github.com/mikeroyal/Game-Console-Dev-Guide/assets/45159366/b0aab63f-7a11-4340-886e-dcc48f9f0f91\"\u003e\n  \u003cbr /\u003e\n  Godot Web Editor\n\u003c/p\u003e\n\n[Godot Tools](https://marketplace.visualstudio.com/items?itemName=geequlim.godot-tools) is a VSCode extension that provides a complete set of tools to code games with Godot Engine in Visual Studio Code.\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://github.com/mikeroyal/Game-Console-Dev-Guide/assets/45159366/0c7171b4-6d48-4380-8714-eb00b321a71f\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\n[Pixelorama](https://github.com/Orama-Interactive/Pixelorama/releases/tag/v0.11) is a free and open source pixel art editor, proudly created with the Godot Engine, by Orama Interactive. Whether you want to make animated pixel art, game graphics, tiles and any kind of pixel art you want, Pixelorama has you covered with its variety of tools and features. Available on Windows, Linux, macOS and the Web.\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://github.com/mikeroyal/Game-Console-Dev-Guide/assets/45159366/503055d2-31bb-459f-aca8-a96dec0a864e\"\u003e\n  \u003cbr /\u003e\n  Pixelorama\n\u003c/p\u003e\n\n\n[Unidot Importer](https://github.com/V-Sekai/unidot_importer) is a Unity compatibility layer and .unitypackage importer for Godot 4.x.\n\n[Dialogic 2.0](https://dialogic.coppolaemilio.com/) is a tool that creates dialogs, characters and scenes to display conversations in your Godot games. \n\n[GodotSteam](https://github.com/CoaguCo-Industries/GodotSteam) is an open-source and fully functional Steamworks SDK / API module and plug-in for the Godot Game Engine. \n\n[Supported languages for Godot Engine](https://docs.godotengine.org/en/latest/tutorials/scripting/gdnative/what_is_gdnative.html#supported-languages)\n\n**Community supported languages for Godot Engine**\n\nThe bindings below are developed and maintained by the community (may not be production-ready):\n\n * [Python](https://github.com/touilleMan/godot-python)\n * [Rust](https://github.com/godot-rust/godot-rust)\n * [Kotlin](https://github.com/utopia-rise/godot-kotlin)\n * [D](https://github.com/godot-d/godot-d)\n * [Nim](https://github.com/pragmagic/godot-nim)\n \n\n## Godot Learning Resources\n\n * [Introduction to Godot Engine](https://docs.godotengine.org/en/latest/getting_started/introduction/index.html#introduction)\n * [Godot Engine Education](https://godotengine.org/education/)\n * [Godot Engine Community Tutorials \u0026 Resources](https://docs.godotengine.org/en/stable/community/tutorials.html)\n * [Godot debugging tools](https://docs.godotengine.org/en/stable/tutorials/scripting/debug/overview_of_debugging_tools.html)\n * [Godot Engine GitHub](https://github.com/godotengine)\n * [Awesome-Godot  GitHub](https://github.com/godotengine/awesome-godot)\n * [Learn Game Development · Godot Tutorials](https://godottutorials.com/)\n * [Learn to Make Games · GDQuest](https://www.gdquest.com/)\n * [Learn Godot Game Development · GameDev Academy](https://gamedevacademy.org/complete-course/)\n * [Godot Game Engine - The Complete Course · Udemy](https://www.udemy.com/course/learngodot/)\n * [Learn Godot for Game Development · freeCodeCamp.org](https://www.freecodecamp.org/news/learn-godot-for-game-development/)\n\n# Blender Development\n[Back to the Top](https://github.com/mikeroyal/Game-Console-Dev-Guide#table-of-contents)\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/125211848-53765800-e25e-11eb-872d-732aa2e74ad1.png\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\n## Blender Learning Resources\n\n[Blender](https://www.blender.org) is a professional, free and open-source 3D computer graphics software toolset used for creating animated films, visual effects, art, 3D printed models, interactive 3D applications and video games. For those on Linux there's an [Independent Blender LTS support and services for enterprises](https://www.blender.org/press/canonical-offering-blender-support/) are available now via [Canonical](https://canonical.com/)(makers of the Ubuntu Advanced platform).\n\n* [Blender Documentation](https://docs.blender.org/)\n\n* [Blender Foundation](https://www.blender.org/foundation/)\n\n* [Blender Community Fourm](https://devtalk.blender.org/)\n\n* [Blender Foundation Certification Training](https://www.blender.org/certification/)\n\n* [Blender Cloud Courses](https://cloud.blender.org/courses)\n\n* [Blender Institute](https://www.blender.org/institute/)\n\n* [Blender Demo Project files](https://www.blender.org/download/demo-files/)\n\n* [Blender YouTube Tutorials and Demos](https://www.youtube.com/user/BlenderFoundation)\n\n* [Blender Donations \u0026 Sponsors](https://www.blender.org/foundation/donation-payment/)\n\n* [Blender Education](https://www.blender.org/get-involved/)\n\n* [Blender Network](https://www.blendernetwork.org/)\n\n* [Blender Courses from Udemy](https://www.udemy.com/topic/blender/)\n\n* [BlenderNation](https://www.blendernation.com/category/blender/add-ons/)\n\n* [Blender Market(The indie market for Blender creators)](https://www.blendermarket.com/categories/scripts-and-addons)\n\n## Blender Tools and Addons\n\n[Blender](https://www.blender.org) comes packed with import/export support for many different programs.\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://github.com/mikeroyal/Game-Console-Dev-Guide/assets/45159366/41c109a8-4b18-414e-9f5f-6ed9c70fbb27\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\n**Including:**\n\n- Image(JPEG, JPEG2000, PNG, TARGA, OpenEXR, DPX, Cineon, Radiance HDR, SGI Iris, TIFF)\n\n- Video(AVI, MPEG and Quicktime (on MacOS)).\n\n- 3D(Alembic, 3D Studio (3DS), COLLADA (DAE), Filmbox (FBX), Autodesk (DXF), Wavefront (OBJ), DirectX (x), Lightwave (LWO), Motion Capture (BVH), SVG, Stanford   PLY, STL, VRML, VRML97, X3D).\n\n\n[Eevee](https://docs.blender.org/manual/en/latest/render/eevee/introduction.html) is Blender’s realtime render engine built using [OpenGL]() focused on speed and interactivity while achieving the goal of rendering [PBR]() materials. Eevee can be used interactively in the 3D Viewport but also produce high quality final renders. Eevee materials are created using the same shader nodes as Cycles, making it easy to render existing scenes. For Cycles users, this makes Eevee work great for previewing materials in realtime.\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/125211855-5a04cf80-e25e-11eb-94cf-f55ecf273049.png\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\n**Eevee final render – “Temple”. Source: [Dominik Graf](https://docs.blender.org/manual/en/latest/render/eevee/introduction.html#id2)**\n\n[Cycles](https://www.blender.org/features/rendering/) is Blender’s ray-trace based production render engine.\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/118338215-6ec91f00-b4ca-11eb-9c9e-f5cf377ca3c4.png\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\n **Blender's Cycles Render Engine. Source: [Blender](https://www.blender.org)**\n\n \u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/118338217-6ffa4c00-b4ca-11eb-92d0-9aa30230495d.png\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\n **Blender VFX(Visual Effects). Source: [Blender](https://www.blender.org)**\n\n[FreeStyle](https://docs.blender.org/manual/en/dev/render/freestyle/index.html) is an edge- and line-based non-photorealistic (NPR) rendering engine. It relies on mesh data and z-depth information to draw lines on selected edge types. Various line styles can be added to produce artistic (“hand drawn”, “painted”, etc.) or technical (hard line) looks.\n\n[Modifiers](https://docs.blender.org/manual/en/dev/modeling/modifiers/introduction.html) are automatic operations that affect an object in a non-destructive way. With modifiers, you can perform many effects automatically that would otherwise be too tedious to update manually (such as subdivision surfaces) and without affecting the base geometry of your object.\n\n[UV Unwrapping](https://docs.blender.org/manual/en/latest/modeling/meshes/editing/uv/unwrapping/introduction.html) is a tool that let's you easily unwrap your mesh right inside Blender, and use image textures or paint your own directly onto the model.\n\n[UV Sculpt](https://docs.blender.org/manual/en/dev/modeling/meshes/editing/uv/uv_sculpt.html) is a “mode” in Blender that allows you to grab, pinch and smooth UVs, just like Sculpt Mode.\n\n[Dedicated Workspace](https://www.blender.org/features/sculpting/#dedicated-workspace) is a feature of sculpting organic subjects using the built-in sculpting feature set of Blender.\n\n[Brushes](https://docs.blender.org/manual/en/latest/sculpt_paint/sculpting/introduction.html) is a feature in Blender that comes with built-in brushes such as Crease, Clay Strips, Pinch, Grab, Smooth, Mask and many more.\n\n[Dynamic topology( dyntopo)](https://docs.blender.org/manual/en/dev/sculpt_paint/sculpting/adaptive.html) is a dynamic tessellation sculpting method, which adds and removes details on the fly, whereas regular sculpting only affects the shape of a mesh.\n\n[Masking](https://docs.blender.org/manual/en/dev/sculpt_paint/sculpting/hide_mask.html#mask) is a feature used while sculpting, areas might be hidden behind parts of the mesh or they might be too close to other parts. To work through these, it is useful to isolate parts of a mesh to sculpt on. This can be done by either completely hiding parts of the mesh or by masking areas that can not be sculpted on.\n\n[Grease Pencil](https://www.blender.org/features/grease-pencil/) is a particular type of Blender object that allow you to draw in the 3D space. It can be use to make traditional 2D animation, cut-out animation, motion graphics or use it as storyboard tool among other things.\n\n[Constraints](https://docs.blender.org/manual/en/2.80/animation/constraints/index.html) are a way to control an object’s properties (e.g. its location, rotation, scale), using either plain static values (like the “limit” ones), or another object, called “target” (like e.g. the “copy” ones).\n\n[Drivers](https://docs.blender.org/manual/en/2.80/animation/drivers/index.html) are a way to control values of properties by means of a function, mathematical expression or small script.\n\n[Shape keys](https://docs.blender.org/manual/en/2.80/animation/shape_keys/introduction.html) are used to deform objects into new shapes for animation. In other terminology, shape keys may be called “morph targets” or “blend shapes”. The most popular use cases for shape keys are in character facial animation and in tweaking and refining a skeletal rig. They are particularly useful for modeling organic soft parts and muscles where there is a need for more control over the resulting shape than what can be achieved with combination of rotation and scale.\n\n[Motion Paths](https://docs.blender.org/manual/en/2.80/animation/motion_paths.html) is a tool allows you to visualize the motion of points as paths over a series of frames. These points can be object origins and bone joints.\n\n[Simulations](https://www.blender.org/features/simulation/) is a tool that allows you to create amazing Simulations such as a crumbling building, rain, fire, smoke, fluid, cloth or full on destruction.\n\n[Blender Video Editor](https://www.blender.org/features/video-editing/) is a video editor that comes with a built-in video sequence editor allows you to perform basic actions like video cuts and splicing, as well as more complex tasks like video masking or color grading.\n\n[Blender Compositing](https://www.blender.org/features/vfx/#compositing) is a feature that comes with an impressive library of nodes for creating camera fx, color grading, vignettes and much more\nRender-layer support. Along with the ability to render to multiLayer OpenEXR files.\n\n[Blender Motion Tracking](https://www.blender.org/features/vfx/#motion-tracking) is a feature that provides production ready camera and object tracking, allowing you to import raw footage, track it, mask areas and reconstruct the camera movements live in your 3d scene.\n\n[fSpy](https://fspy.io) is an open source still image [camera matching tool](https://learn.foundry.com/modo/content/help/pages/rendering/camera_matching.html) developed by Stuffmatic. Also check-out the fSpy importer for [Blender](https://www.blender.org/).\n\n \u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/125211857-5c672980-e25e-11eb-93d5-ac8e0069298d.png\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\n**Using the fSpy in Blender for Camera Matching a 3D model. Source:[fSpy](https://fspy.io/)**\n\n\n\n# VS Code Development\n[Back to the Top](https://github.com/mikeroyal/Game-Console-Dev-Guide#table-of-contents)\n\n\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://user-images.githubusercontent.com/45159366/140833078-77973dcf-d3a6-421f-b6a7-b6e63fb1e97c.png\"\u003e\n  \u003cbr /\u003e\n\u003c/p\u003e\n\n## Getting Started with VS Code\n\n[Visual Studio Code](https://code.visualstudio.com) is a lightweight but powerful source code editor which runs on your desktop and is available for Windows, macOS and Linux. It comes with built-in support for JavaScript, TypeScript and Node.js and has a rich ecosystem of extensions for other languages (such as C++, C#, Java, Python, PHP, Go) and runtimes (such as .NET and Unity).\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://user-images.githubusercontent.com/45159366/140832435-49e53589-e9e1-47fe-a1bd-d9800cfc1274.png\"\u003e\n\u003cbr /\u003e\nVS Code\n\u003c/p\u003e\n\n[Visual Studio Marketplace](https://marketplace.visualstudio.com/VSCode) is a marketplace for all extensions for Visual Studio, Azure DevOps Services, Azure DevOps Server and Visual Studio Code.\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://user-images.githubusercontent.com/45159366/140832440-0247a088-4eeb-4c57-ae7d-90894d56d629.png\"\u003e\n\u003cbr /\u003e\nVS Code Marketplace\n\u003c/p\u003e\n\n\n[VS Code Documentation](https://code.visualstudio.com/docs)\n\n[Working with GitHub in VS Code](https://code.visualstudio.com/docs/editor/github)\n\n[Code Server](https://coder.com/) is a tool that allows you to run [VS Code](https://code.visualstudio.com/) on any machine anywhere and access it in the browser.\n\n[GitHub Codespaces](https://docs.github.com/en/free-pro-team@latest/github/developing-online-with-codespaces) is an integrated development environment(IDE) on GitHub. That allows developers to develop entirely in the cloud using Visual Studio and Visual Studio Code. Also, from any repo or pull request on GitHub you can simply press the period (.) key on your keyboard to bring up the browser-based VS Code environment with the source code file ready for editing. That dot (.) press to bring up the web-based VS Code editor takes you to https://github.dev/.\n\n[Language Server Protocol (LSP)](https://microsoft.github.io/language-server-protocol/) is a tool that defines the protocol used between an editor or IDE and a language server that provides language features like auto complete, go to definition, find all references.\n\n### VS Code Extensions for Developer Productivity\n\n[Visual Studio Live Share](https://visualstudio.microsoft.com/services/live-share/) is a service/ extension that enables you to collaboratively edit and debug with others in real time, regardless of the programming languages you're using or app types you're building. You can instantly and securely share your current project, start a joint debugging session, share terminal instances, forward localhost web apps, have voice calls, and more.\n\n[GistPad](https://marketplace.visualstudio.com/items?itemName=vsls-contrib.gistfs) is a Visual Studio Code extension that allows you to edit GitHub Gists and repositories from the comfort of your favorite editor. You can open, create, delete, fork and star gists and repositories, and then seamlessly begin editing files as if they were local, without ever cloning, pushing or pulling anything.\n\n[Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer) is an extension for Visual Studio Code that launches a development local Server with live reload feature for static \u0026 dynamic pages.\n\n[GitHub Pull Requests and Issues](https://marketplace.visualstudio.com/items?itemName=GitHub.vscode-pull-request-github) is an extension for Visual Studio Code that allows you to review and manage GitHub pull requests and issues in Visual Studio Code.\n\n[Terminal](https://marketplace.visualstudio.com/items?itemName=formulahendry.terminal) is an extension for Visual Studio Code that lets you run terminal command directly in the Editor.\n\n[Profile Switcher](https://marketplace.visualstudio.com/items?itemName=aaronpowell.vscode-profile-switcher) is an extension for Visual Studio Code that allows you to switch between different profiles you have created.\n\n[Material Icon Theme](https://marketplace.visualstudio.com/items?itemName=PKief.material-icon-theme) is an extension for Visual Studio Code that gets the Material Design icons into your VS Code.\n\n[One Dark Pro](https://marketplace.visualstudio.com/items?itemName=zhuangtongfa.Material-theme) is an extension for Visual Studio Code that adds Atom's iconic One Dark theme, which is one of the most installed themes for VS Code.\n\n[VSCode Icons](https://marketplace.visualstudio.com/items?itemName=vscode-icons-team.vscode-icons) is an extension for Visual Studio Code that brings icons to your Visual Studio Code setup.\n\n[GitLens](https://marketplace.visualstudio.com/items?itemName=eamodio.gitlens) is an extension for Visual Studio Code that helps you visualize code authorship at a glance via Git blame annotations and code lens, seamlessly navigate and explore Git repositories, gain valuable insights via powerful comparison commands, and so much more.\n\n[Import Cost](https://marketplace.visualstudio.com/items?itemName=wix.vscode-import-cost) is an extension for Visual Studio Code that will display inline in the editor the size of the imported/required package. The extension utilizes webpack with babili-webpack-plugin in order to detect the imported size.\n\n[Markdown All in One](https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one) is an extension for Visual Studio Code that gives you everything you need to write Markdown (keyboard shortcuts, table of contents, auto preview and more).\n\n[Bracket Pair Colorizer](https://marketplace.visualstudio.com/items?itemName=CoenraadS.bracket-pair-colorizer) is an extension for Visual Studio Code that allows","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikeroyal%2Fgame-console-dev-guide","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmikeroyal%2Fgame-console-dev-guide","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikeroyal%2Fgame-console-dev-guide/lists"}