├── .gitattributes ├── .travis.yml ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE.md ├── README.md └── docs ├── epicsamples.md └── imgs ├── learn-homepage.PNG ├── learn-vehicle-create.PNG ├── learn-vehicle-library.PNG ├── learn-vehicle-open.PNG ├── learn-vehicle-project.PNG └── learn-vehicle.PNG /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | readme.md merge=union -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | { 2 | "language": "ruby", 3 | "rvm": 2.2, 4 | "before_script": [ 5 | "gem install awesome_bot" 6 | ], 7 | "script": [ 8 | "awesome_bot README.md --allow-dupe --allow-redirect --white-list creativecommons,travis-ci.org,github.com/EpicGames/,github.com/NvPhysX/" 9 | ], 10 | "group": "stable", 11 | "os": "linux" 12 | } 13 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Contributor Covenant Code of Conduct 2 | 3 | ## Our Pledge 4 | 5 | In the interest of fostering an open and welcoming environment, we as 6 | contributors and maintainers pledge to making participation in our project and 7 | our community a harassment-free experience for everyone, regardless of age, body 8 | size, disability, ethnicity, gender identity and expression, level of experience, 9 | nationality, personal appearance, race, religion, or sexual identity and 10 | orientation. 11 | 12 | ## Our Standards 13 | 14 | Examples of behavior that contributes to creating a positive environment 15 | include: 16 | 17 | * Using welcoming and inclusive language 18 | * Being respectful of differing viewpoints and experiences 19 | * Gracefully accepting constructive criticism 20 | * Focusing on what is best for the community 21 | * Showing empathy towards other community members 22 | 23 | Examples of unacceptable behavior by participants include: 24 | 25 | * The use of sexualized language or imagery and unwelcome sexual attention or 26 | advances 27 | * Trolling, insulting/derogatory comments, and personal or political attacks 28 | * Public or private harassment 29 | * Publishing others' private information, such as a physical or electronic 30 | address, without explicit permission 31 | * Other conduct which could reasonably be considered inappropriate in a 32 | professional setting 33 | 34 | ## Our Responsibilities 35 | 36 | Project maintainers are responsible for clarifying the standards of acceptable 37 | behavior and are expected to take appropriate and fair corrective action in 38 | response to any instances of unacceptable behavior. 39 | 40 | Project maintainers have the right and responsibility to remove, edit, or 41 | reject comments, commits, code, wiki edits, issues, and other contributions 42 | that are not aligned to this Code of Conduct, or to ban temporarily or 43 | permanently any contributor for other behaviors that they deem inappropriate, 44 | threatening, offensive, or harmful. 45 | 46 | ## Scope 47 | 48 | This Code of Conduct applies both within project spaces and in public spaces 49 | when an individual is representing the project or its community. Examples of 50 | representing a project or community include using an official project e-mail 51 | address, posting via an official social media account, or acting as an appointed 52 | representative at an online or offline event. Representation of a project may be 53 | further defined and clarified by project maintainers. 54 | 55 | ## Enforcement 56 | 57 | Instances of abusive, harassing, or otherwise unacceptable behavior may be 58 | reported by contacting the project team at terreh@terrehbyte.com. All 59 | complaints will be reviewed and investigated and will result in a response that 60 | is deemed necessary and appropriate to the circumstances. The project team is 61 | obligated to maintain confidentiality with regard to the reporter of an incident. 62 | Further details of specific enforcement policies may be posted separately. 63 | 64 | Project maintainers who do not follow or enforce the Code of Conduct in good 65 | faith may face temporary or permanent repercussions as determined by other 66 | members of the project's leadership. 67 | 68 | ## Attribution 69 | 70 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, 71 | available at [http://contributor-covenant.org/version/1/4][version] 72 | 73 | [homepage]: http://contributor-covenant.org 74 | [version]: http://contributor-covenant.org/version/1/4/ 75 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing 2 | 3 | Thanks for taking the time to contribute! Here's a quick checklist for you to 4 | run through when thinking through and formulating a contribution: 5 | 6 | - [ ] I read and will adhere to the [Code of Conduct](CODE_OF_CONDUCT.md)! 7 | - [ ] I checked the list for an existing entry for the thing I'm adding. 8 | - [ ] I can personally vet the thing I'm adding as high-quality and well-documented. 9 | - [ ] I added the thing in the correct category! 10 | - [ ] I made sure that the thing I added was in alphabetal order. 11 | - [ ] I have properly formatted the line for the thing I'm adding. 12 | - Example: `[Name](Link) - Description` 13 | - [ ] I have outlined the value of the thing in my pull request. 14 | 15 | Please think twice when submitting paid assets. It'd be preferable to keep the 16 | number of paid assets to a minumum to keep things as _accessible_ and helpful as 17 | possible. This policy may shift towards maintaining a list of high-quality 18 | paid assets to reflect that. Part of that process will involve defining what 19 | _high-quality_ as much as possible. 20 | 21 | If you've got any questions, feel free to file it via the issue tracker or 22 | contact the maintainer privately via their listed e-mail address, if available. -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | # License 2 | 3 | [![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0/) 4 | 5 | To the extent possible under law, [Terry Nguyen](https://terrehbyte.com) has 6 | waived all copyright and related or neighboring rights to this work. 7 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Awesome UE4 2 | 3 | This is a curated collection of articles, assets, and libraries that have 4 | been created for use with Unreal Engine 4. 5 | 6 | Suggestions and recommendations are welcome to be filed via the GitHub issue 7 | tracker for this repository. For more information, see the 8 | [contribution guidelines](CONTRIBUTING.md). 9 | 10 | Inspired by [awesome-unity](https://github.com/RyanNielson/awesome-unity), 11 | [awesome-design](https://github.com/gztchan/awesome-design), 12 | [awesome-cpp](https://github.com/fffaraz/awesome-cpp). 13 | 14 | **Contents** 15 | 16 | - [Awesome UE4](#awesome-ue4) 17 | - [Assets](#assets) 18 | - [3D Modeling and Tools](#3d-modeling-and-tools) 19 | - [Analytics](#analytics) 20 | - [Animations](#animations) 21 | - [Artificial Intelligence](#artificial-intelligence) 22 | - [Audio](#audio) 23 | - [Build](#build) 24 | - [Editor Extensions](#editor-extensions) 25 | - [Forks](#forks) 26 | - [Gameplay](#gameplay) 27 | - [Networking](#networking) 28 | - [Sample Projects](#sample-projects) 29 | - [Scripting](#scripting) 30 | - [User Interface](#user-interface) 31 | - [Utilities](#utilities) 32 | - [Resources](#resources) 33 | - [Coding](#coding) 34 | - [General](#general) 35 | - [Style and Conventions](#style-and-conventions) 36 | - [License](#license) 37 | 38 | ## Assets 39 | 40 | ### 3D Modeling and Tools 41 | - [ARTv1](https://www.unrealengine.com/marketplace/maya-tools) - Specialized tools and scripts for use with Autodesk Maya. 42 | - [ARTv2](https://www.jeremyernst.com/artv2) - Experimental scripts for skeleton, rig, and animation authoring in Autodesk Maya. 43 | - [VelocityGridExport](https://www.orbolt.com/asset/Benny::UE4_velocitygridexporter) - A tool to export vector fields out of Houdini. 44 | 45 | ### Analytics 46 | - [GameAnalytics Integration](https://github.com/GameAnalytics/GA-SDK-UNREAL) - Plugin for integrating with GameAnalytics services. 47 | 48 | ### Animations 49 | - [Animation Starter Pack](https://www.unrealengine.com/marketplace/animation-starter-pack) - A basic set of character animations for humanoid shooters. 50 | 51 | ### Artificial Intelligence 52 | - [tensorflow-ue4](https://github.com/getnamo/tensorflow-ue4) - Train and use TensorFlow in your UE4 project 53 | 54 | ### Audio 55 | - [FMOD UE4 Integration](https://www.fmod.com/resources/documentation-ue4?version=2.1&page=welcome.html) - Plugin for integrating FMOD assets for realtime playback in-engine. 56 | - [Wwise Unreal Plug-in](https://www.audiokinetic.com/library/edge/?source=UE4&id=index.html) - Plugin for integrating Wwise assets for realtime playback in-engine. 57 | 58 | ### Build 59 | - [LoadingScreen](https://github.com/ue4plugins/LoadingScreen) - Plugin for creating simple loading screens with movies and advice text. 60 | 61 | ### Forks 62 | - [NVIDIA GameWorks](https://github.com/NvPhysX/UnrealEngine) - A fork of UE4 offering various integrations of NVIDIA's GameWorks package. 63 | - Note: Your GitHub account must be a part of the [Epic Games organization](https://www.unrealengine.com/ue4-on-github) in order to view this. 64 | 65 | ### Gameplay 66 | - [ue4-targetsystemplugin](https://github.com/mklabs/ue4-targetsystemplugin) - Dark Souls inspired lock-on/targeting system for cameras 67 | - [PBCharacterMovement](https://github.com/ProjectBorealis/PBCharacterMovement) - Recreation of HL2 movement in UE4 (from Project Borealis) 68 | 69 | ### Networking 70 | - [Epic Online Services](https://dev.epicgames.com/en-US/services) - Leverage Epic's game services for your own game (e.g. analytics, player data, player help desk, matchmaking) 71 | - [PingPlugin](https://github.com/DescendentStudios/PingPlugin) - ICMP ping hosts with Blueprint nodes 72 | - [TwitchAuth](https://github.com/fivefingergames/TwitchAuth) - In-game Twitch authentication plugin 73 | - [VaRest](https://github.com/ufna/VaRest) - A simple REST API client with support for automatic JSON deserialization. 74 | 75 | ### Editor Extensions 76 | - [UE4GitPlugin](https://github.com/SRombauts/UE4GitPlugin) - Integrates Git as a source control provider. 77 | - The initial release, v1, was integrated into the engine in engine version 4.7. 78 | - [UE4PlasticPlugin](https://github.com/SRombauts/UE4PlasticPlugin) - Integrates PlasticSCM as a source control provider. 79 | - [UnrealFastNoise](https://github.com/midgen/UnrealFastNoise) - A runtime noise generation plugin based on the excellent [FastNoise from Auburns](https://github.com/Auburns/FastNoise). 80 | 81 | ### Sample Projects 82 | - [Epic Games' Learning Resources](docs/epicsamples.md) - Sample content and projects provided by Epic Games. 83 | - [Epic Survival Game Series](https://github.com/tomlooman/EpicSurvivalGameSeries) - C++-based survival game project - completed version of [Tom Looman's tutorial](https://www.tomlooman.com/survival-sample-game-for-ue4/section-one/) 84 | 85 | ### Scripting 86 | - [SkookumScript](https://github.com/EpicSkookumScript/SkookumScript-Plugin) - Plugin for integrating SkookumScript as a scripting language. 87 | - [Unreal.js](https://github.com/ncsoft/Unreal.js) - Plugin for integrating JavaScript as a scripting language. 88 | - [UnrealEnginePython](https://github.com/20tab/UnrealEnginePython) - Plugin for integrating Python as a scripting language. 89 | 90 | ### Utilities 91 | - [BlueprintUE](https://blueprintue.com/) - Paste and share UE Blueprints with others (like Pastebin, but for your Blueprints) 92 | - [Joy Machine's Repo of _Things_](https://github.com/joymachinegames/joymachine-public) - Collection of modular gameplay scripts for UE4 and tools relating to game development. 93 | - [UE4 Console Variables and Commands](https://digilander.libero.it//ZioYuri78/) - Quick reference for CVars and Commands available in stock UE4 with help text 94 | 95 | ## Resources 96 | 97 | ### Coding 98 | - [C++ Coding Standard](https://docs.unrealengine.com/latest/INT/Programming/Development/CodingStandard/index.html) - The Epic Games C++ Coding Standard. 99 | - [Gameplay Framework Reference](https://docs.unrealengine.com/latest/INT/Gameplay/Framework/QuickReference/index.html) - A high-level view of the concepts you'll work with in UE4. 100 | - [GASContent](https://github.com/Pantong51/GASContent) - Collection of notes and references for working with UE4's Gameplay Ability System 101 | - [Setting Up Visual Studio for UE4](https://docs.unrealengine.com/latest/INT/Programming/Development/VisualStudioSetup/index.html) - A guide for installing and configuring the advanced Unreal Build Tool. (UBT) 102 | - [SubsystemBrowserPlugin](https://github.com/aquanox/SubsystemBrowserPlugin) - Exposes subsystem properties to the editor 103 | - [ue4-gitignore](https://github.com/MOZGIII/ue4-gitignore) - Example `.gitignore`, `.gitattributes` configuration for UE4 development with Git LFS 104 | - [Unreal Engine 4 for Unity Developers](https://docs.unrealengine.com/latest/INT/GettingStarted/FromUnity/) - A mapping of Unity3D concepts to Unreal Engine 4 concepts. 105 | - [Unreal Engine 4 Network Compendium](http://cedric-neukirchen.net/2017/02/14/multiplayer-network-compendium/) - A guide for authoring networked gameplay in Unreal. 106 | 107 | ### General 108 | - [Community Content, Tools and Tutorials](https://forums.unrealengine.com/forumdisplay.php?12-Community-Content-Tools-and-Tutorials) - The community resources pool on the Unreal Engine forums. 109 | - [Unreal C++](https://unrealcpp.com/) - A large collection of tutorials covering common features implemented in C++ 110 | - [Harrison/unrealcpp](https://github.com/Harrison1/unrealcpp) contains source code for all of the tutorials contained above 111 | - [Unreal Development Guides and Tips](https://github.com/JaredP94/Unreal-Development-Guides-and-Tips) - Collection of tutorials from basic to optimizing your code and your development workflow with UE4 112 | - [Unreal Engine Blog](https://www.unrealengine.com/en-US/feed/all) - Main feed for all news relating to Unreal Engine 113 | - [Unreal Engine Technology](https://www.unrealengine.com/en-US/feed/tech-blog) - Deep-dives and technical showcases on features or strategies used by select studios 114 | - [UnrealSlackers](http://unrealslackers.org/) - A Discord community of individuals working in UE4 115 | - [Reuben Ward](https://www.youtube.com/c/ReubenWardTutorials/) - Reuben provides both short and long-form tutorials covering a variety of topics involving gameplay and related systems 116 | - [Tom Looman](https://www.tomlooman.com/) - Tom's blog provides a mixture of tutorials and personal development updates on the work he's doing 117 | 118 | ### Style and Conventions 119 | - [UE4 Style Guide](https://github.com/Allar/ue4-style-guide) - A reference style guide for organizing and naming your project and code. 120 | 121 | # License 122 | 123 | This is also reflected in [LICENSE.md](LICENSE.md) for visibility. 124 | 125 | [![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0/) 126 | 127 | To the extent possible under law, [Terry Nguyen](https://terrehbyte.com) has 128 | waived all copyright and related or neighboring rights to this work. 129 | -------------------------------------------------------------------------------- /docs/epicsamples.md: -------------------------------------------------------------------------------- 1 | # Epic Games' Samples and Projects 2 | 3 | The combination of a sparse amount of documentation and a budding community can 4 | make it difficult to break into something as complex as Unreal Engine 4. You can 5 | glean some good gems in the form of snippets and assets from their content 6 | and project samples. 7 | 8 | It's a little non-trivial to access, but you might find it worth doing. 9 | 10 | Before proceeding, make sure that you have an [Epic Games Account](unrealengine.com/login) 11 | and have installed the Epic Games Launcher on your computer. 12 | 13 | **Contents** 14 | 15 | 1. [Browse the Learn tab](#browse-the-learn-tab) 16 | 2. [Creating a Project Using Downloaded Content](#creating-a-project-using-downloaded-content) 17 | 3. [Opening up the Project](#opening-up-the-project) 18 | 19 | ## Browse the Learn tab 20 | 21 | ![Browsing to the Learn tab](imgs/learn-homepage.PNG) 22 | 23 | Open up the Epic Games Launcher and open up the "Learn" tab in the Unreal Engine 24 | menu. This brings you to all of the provided sample materials. 25 | 26 | ![Selecting a sample for download](imgs/learn-vehicle.PNG) 27 | 28 | Clicking on one of the tiles, such as the "Vehicle Game" example game, will 29 | bring you to its launcher page which provides additional information. After 30 | confirming that you'd like to add this to your account, click the "Free" button. 31 | 32 | Congrats! You should have access to that in the future. 33 | 34 | ## Creating a Project Using Downloaded Content 35 | 36 | ![Creating a project from the library page](imgs/learn-vehicle-library.PNG) 37 | 38 | You can create a project by visiting your library in the "Unreal Engine" tab 39 | and selecting the "Create Project" button associated with what you'd like to 40 | create a project of. 41 | 42 | > **First Time Downloading That Content?** 43 | > 44 | > If this is your first time creating a project, then the launcher will need to 45 | > download the assets first. 46 | 47 | ![Creating a project from the product page](imgs/learn-vehicle-create.PNG) 48 | 49 | You can also create it from the product page where you initially added it to 50 | your Epic Games Account in the first place. You should be presented with the 51 | same dialog as the method shown above. 52 | 53 | ![Creating a project on your computer](imgs/learn-vehicle-project.PNG) 54 | 55 | When presented with the project creation dialog, make sure to pay attention to 56 | the version of Unreal Engine 4 that you're creating the project for as well as 57 | the location of the project. 58 | 59 | ![Opening up the project](imgs/learn-vehicle-open.PNG) 60 | 61 | After the project is created, you can visit it at any time by visiting your 62 | launcher and selecting it from your list of projects. You can also open the 63 | UPROJECT file that is created inside of your project folder. -------------------------------------------------------------------------------- /docs/imgs/learn-homepage.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/terrehbyte/awesome-ue4/95bf18a4c3742c2baa2ef262356997b5a1c5adb8/docs/imgs/learn-homepage.PNG -------------------------------------------------------------------------------- /docs/imgs/learn-vehicle-create.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/terrehbyte/awesome-ue4/95bf18a4c3742c2baa2ef262356997b5a1c5adb8/docs/imgs/learn-vehicle-create.PNG -------------------------------------------------------------------------------- /docs/imgs/learn-vehicle-library.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/terrehbyte/awesome-ue4/95bf18a4c3742c2baa2ef262356997b5a1c5adb8/docs/imgs/learn-vehicle-library.PNG -------------------------------------------------------------------------------- /docs/imgs/learn-vehicle-open.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/terrehbyte/awesome-ue4/95bf18a4c3742c2baa2ef262356997b5a1c5adb8/docs/imgs/learn-vehicle-open.PNG -------------------------------------------------------------------------------- /docs/imgs/learn-vehicle-project.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/terrehbyte/awesome-ue4/95bf18a4c3742c2baa2ef262356997b5a1c5adb8/docs/imgs/learn-vehicle-project.PNG -------------------------------------------------------------------------------- /docs/imgs/learn-vehicle.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/terrehbyte/awesome-ue4/95bf18a4c3742c2baa2ef262356997b5a1c5adb8/docs/imgs/learn-vehicle.PNG --------------------------------------------------------------------------------