What will you learn in this course?
- How to implement and lay out your inventory UI (user interface) so that the panels, buttons, slots and icons make sense.
- How to use useful UI components like the Scroll View Asset and the Grid Layout Group to more easily structure your inventory UI.
- How to use the drag-and-drop system so that players can pick up inventory items and move them to other slots, or drop them into the world.
- How to use a pickup system with scriptable objects providing the data for specific inventory items.
- How to use and modify the equipping system so that players can equip weapons and armor from their inventory.
- How to interface between what the player sees on screen in their inventory and what your backend system knows should be the appropriate information stored in the inventory.
- How to use and modify a tooltip system that gives the player information about their inventory items.
- How to make items stackable so that if a player has more than one of an item it only takes up one inventory slot and displays how many items have been stacked.
- How to refactor your code so that when a new feature is added, it propagates to all areas of your project without breaking your game.
- How to build a user interface mockup in Unity before your functionality is in place.
This course is the second in our RPG series and is designed for intermediate users of Unity. We recommend you take
at least the first half of our Complete Unity Developer 2D or 3D, or
equivalent, as a pre-requisite. You don't need to have completed the first part of the RPG Series (the RPG Core Combat course) but it will give you an advantage if you already have.
By enrolling in this course you will have access to the completed Inventory system as an asset pack which you can import into your existing project. We will also take you step-by-step through the process of using, modifying, improving and understanding the code that drives the asset pack.
Please note, this course follows a different format. Rather than building the inventory system from scratch, line-by-line, we will provide you with our code and then explain how the code works so that you understand it fully. This is an approach that works well for folks who are already competent with Unity and C# and wanting to "get to the answer" more quickly.
Although this course is part of our RPG series, you can use the inventory system for any of your projects that require items to be picked up, dropped, moved and equipped.
In this course we will cover the following systems:
- The click-to-pickup and the runover-to-pickup systems
- The dropping system
- The tooltip overlay system
- The stackable item system
- The equipping system
- The saving and loading system
The course covers many advanced programming principles and goes into great depth to discuss good code architecture practices. We cover Interfaces, Virtual Methods, The debugging tool and many more things that aren't covered in our beginner courses.
PreviewUnity UI Primer (15:38)
PreviewShow & Hide Panels (12:15)
PreviewPlacing & Slicing UI Assets (13:07)
PreviewThe Scroll View Asset (9:12)
PreviewThe Grid Layout Group (11:10)
PreviewDrag & Drop Scripts (18:02)
PreviewOverview Of Interfaces (10:25)
PreviewMore Dragging & Dropping (18:34)
PreviewDrag & Drop Challenge (5:20)
StartInventory Script Introduction (6:10)
StartInventory Scriptable Objects (7:49)
StartUnderstanding Inventory.cs (10:30)
StartInventorySlotUI.cs Changes (4:54)
StartUsing The Debugger Tool (15:46)
StartInventory Directory Structure (2:07)
StartItem ID Explained (11:50)
StartUsing Redraw() (3:07)
Sam wrote his first game at 14, hacking together little games in Macromedia Flash during his summer holidays. Not long after, he taught himself C++ followed by Python and web programming. He was hooked.
In 2010 he went to study Computer Science at the University of Cambridge and he's been in Cambridge ever since. That is where he caught the entrepreneurial bug and realised he wouldn't want a traditional job for long. So after a few years working in various jobs to get experience, he quit and started burning through his savings looking for his calling.
At the end of 2015, he was coaching some friends to improve their programming skills. Realising how much he loved it, he started creating online courses and reached out to Ben for help. Fast forward and he's part of the GameDev.tv gang and gets to hang out with our awesome community!