
Preview the course trailer for the C# Unity and Swift 4 masterclass, highlighting how to make games and apps using these platforms.
Explore Unity portal gameplay using C# in this module of the C# Unity and Swift 4 masterclass, mastering portal mechanics for games and apps.
Download Unity and install the personal version, review the license, enable essential components including the editor and assets package, and set up Android and web builds to start making games.
Navigate the Unity editor, create 3D projects, and manage scenes, game objects, and the main camera. Learn to use the inspector, transform properties, and the assets and scenes folders.
Create a simple C# script in Unity to print hello world to the console by attaching a test script to a game object and using Debug.Log.
Learn to declare and assign variables in Unity using C#, including public strings and numbers, and edit them via the inspector without recompiling. Master string concatenation and correct parentheses.
Learn to organize code by declaring and calling methods, using private and void return types, passing parameters, returning sums, and calling them from start to keep Unity scripts clean.
Learn to implement loops in Unity using for and while structures, control initialization, conditions, and increments, print debug logs, and explore random range for non-deterministic loops.
Explore positioning in Unity by using the transform component, local vs world position, and move a cube with Vector3 and delta time for consistent movement.
Enable first person mode in Unity by importing standard assets and using the first person controller for movement and look, then build a floor and walls with a single camera.
Activate physics by adding a rigid body to the cube to enable collisions, gravity, and mass effects during play; save the scene to preserve changes after testing.
Attach a first-person player controller, detect mouse clicks with get mouse button and get mouse button down, and implement click-to-grab and dragging logic with helpful comments in the update method.
Implement a raycast from the player's position in the look direction to detect hits, capture hit information with an out parameter, and print the hit object's name within grabbing distance.
Create a box and a grab object script in unity, with the box extending the grab object behavior. Use GetComponent<GrabObject>() to detect a grabbable target and print a grab message.
Track the held object with a private variable and implement hold and release methods to move a box at a fixed distance in front of the player, toggling gravity accordingly.
Master object interactions in Unity by implementing hold and release logic, camera-driven forward vectors, collider management, and throw force; then convert dynamic objects into reusable prefabs for consistency.
Design a pressable button for a first-person puzzle game, using a box collider and a button model; show how players push boxes to press it and open the door.
create and attach a c# script to a button, enable isTrigger on its box collider, and log the colliding object's name to verify trigger overlap in Unity.
Add a capsule collider to the player with trigger enabled to detect when the player or a nearby ball stands on the button, using getcomponent checks to trigger press events.
Learn to animate a Unity button by moving it down on press with a target position and lerp, using a press timer to return and tweak speed.
Learn to change a button's color in unity by accessing the button's material on the mesh renderer, and toggle between green and red using on press and on unpress methods.
Design a simple door in a Unity scene by creating and resizing walls, duplicating them, and applying blue door and column materials for a cohesive look.
Learn to script a door in Unity using C#, creating a door and trigger, wiring a button, and moving the door with lerp between open and closed positions.
Master how to connect a pressure button to a door in Unity by referencing a single trigger object, using on press events, and creating a simple interactive scene.
Design a purple orb prefab that rotates with a simple script, triggers on contact, and powers a level transition by connecting to a game controller to load the next level.
Develop wall portals by adding box colliders as trigger areas, dividing walls to avoid clipping, and turning portal areas into prefabs for testing portal functionality in Unity.
Implement a recast to identify the object the player looks at and the hit point for portal placement. Use an interacted with object flag to control spawning on click.
Create simple placeholders in Unity, set up two portal materials, instantiate a portal prefab at a hit point, and manage portals with a list to swap between them.
Learn how normals guide surface interactions in Unity, using Vector3 normals to determine hit points and portal orientation, and implement portal placement and teleportation between surfaces.
Enable teleporting between portals by converting portals' colliders to triggers, handling on trigger enter to map to the exit portal, and applying a forward offset to prevent immediate re-teleport.
Master adjusting teleporting angles in Unity by copying portal rotation to the first-person controller via a mouse look method, enabling correct exits from walls and ceilings.
Create and configure render textures, place cameras inside portals, and swap rendering targets at runtime so each portal displays the other's view, enabling real-time portal rendering.
Learn to design and manage a Unity game UI with a canvas, instruction and timer text, end-game messaging, and a game controller that updates the timer as players beat levels.
Create a Unity main menu with UI text and a play button, linking to the game scene via a menu scene controller and scene management.
Rename the scene to level 1, rebuild lighting, and save changes; convert the player to a prefab and duplicate level 1 into level 2 to begin level design.
Use the camera position for portal placement, design strong walls and ceilings, and stack boxes to reach the orb, and note tricks for speed runners to beat the level.
Create a singleton level manager in Unity using C# to load levels via scene manager, enforce a maximum level, and drive a next-level flow with an end game timer.
Learn Blender basics: navigate with left click, emulate numpad for views, and master tools like extrude, loop cut, and mirror modifier for modeling.
Design and model a portal gun in Blender, build the handle, apply a mirror modifier, add a monitor and rifling details, and shape a front barrel for the game.
Unwrap a gun model by marking seams and unwrapping UVs to avoid odd mirroring. Separate and wrap pieces for clean UVs and prepare textures in Photoshop.
Apply base gun color and energy accents, tune turquoise lights and black gray tones, set green monitor hues, then export the uv layout for texture work in Photoshop.
Export the UV map at 2048 by 2048 for the portal gun, set fill opacity to 25 percent, and save a second UV to preserve base colors before Photoshop.
Texture a portal gun in Photoshop with brushed steel textures, create texture islands, and duplicate and colorize pieces for a cohesive metal finish.
Select and remove metal areas with the marquee tool at tolerance 25, replace textures, apply weld textures, adjust brightness and contrast, and export the final textured gun.
Create a button model by adding cylinders, snapping to the grid, extruding, and beveling edges. Refine shading, shape inner details, and apply a red base material for a game-ready button.
Explore UV unwrapping for a button model, project from view, adjust edges for even texture distribution, and export high-resolution UV maps and textures to achieve a steel-like button surface.
Apply a circular brushed steel texture to the button by using polar coordinates in Photoshop, adjusting the pattern to avoid stretched lines, then invert, fill, and save the layer.
Learn to work with textures in Crazybump, creating maps and applying a normal map and metallic color to a texture, then save and preview how lighting affects reflections.
Create and assemble 3D cables by modeling, scaling, snapping, and duplicating segments to form a clean, aligned network. Apply UV mapping and edge workflows for a seamless grid layout.
Transform and orient cables in Photoshop, use selection and painting to add black shading and a yellow highlight. Then save the textured cable texture for game use.
Use crazy bump to texture cables with specular and normal maps, adjust metallic color, contrast, and brightness for a flat, yellowish look, and decide not to save a normal map.
Learn to transform a cube into a weighted energy block by beveling edges, extruding faces, and applying layered colors and materials to form a contained energy cube with rim details.
Create modular wall pieces on an 8 by 8 grid, using snap mode to align walls and floors, then duplicate, rotate, and refine with grooves and center loops before texturing.
Unwrap walls and floors using front orthographic view, project textures from view, and adjust seams for clean UVs. Mirror UVs and export to Unity and Photoshop for texture work.
Export the walls and floor as separate FDX objects after unwrapping UVs, create 2048 by 2048 textures saved in a textures folder, and prepare assets for Unity.
Turn textures into normal and specular maps, adjust intensity and detail for walls and floors, save as norm and wall spec, then import textures into Unity.
Texture your floor in Photoshop, create a seamless UV map, apply a concrete texture, offset and heal seams, adjust color, merge layers, and export for import into Unity.
Texture a wall asset by mixing Photoshop textures—brush steel, white stucco, and dark cement—and apply it in Unity. Balance transparency and blending to achieve a brushed cement look.
Design and model glass doors for a game, adding a center gate, grooves, and bevels with edge loops for a realistic blast door look.
Learn to unwrap blast door pieces for texturing in Unity, using front orthographic mode, project from view, mirror pillar textures, and export the textured pieces as fcx.
Export the door by creating a UV layout, naming it doors 01, and setting 248 by 248 textures with transparency; export as fbx file and texture in Photoshop for Unity.
Texture a door in Photoshop by composing UV textures with metal, concrete, and brushed steel layers, adjusting opacity, duplicating groups, and creating diffuse and specular maps for Unity.
Fix door unwrap issues by adjusting the wall geometry, unwrapping the single face from a projected view, mirroring parts, and exporting updated textures for game assets.
Create a normal map from the diffuse map with crécy bump and save it. Import the maps into Unity and set up a material with albedo, specular, and smoothness.
Create a wall material in Unity, apply textures, tune the diffuse and specular, set the normal map, and color walls to a cement-like finish for the scene.
Create and apply a floor material in Unity, configure standard specular with diffuse, specular, and normal maps, adjust shininess and normals, fix seams, and preview the floor.
In this course, you learn how to build a Portals game with Unity® and Blender. You also design and code practical apps from start to finish in Xcode 9. Join now to get so many new skills.
This course is unique because we make both the code and the art for the game from scratch! We teach you the fundamentals of designing, coding, and modeling a 3D game.
First you design the game and its functionality in Unity®. You learn how to code in C# and build video game levels.
Don't worry if you've never coded before. We start simple and add more to the games as the course goes on.
Why Unity®?
Unity® is one of the most popular platforms in game development. You can use Unity® to build 2D and 3D games. Unity® is cross-platform, which means it is easy to use with other platforms.
Then you create the 3D models for the game in Blender. You build all the art assets for the game. You learn how to integrate your art from Blender into Unity®.
Why Blender?
Blender, like Unity®, is a popular production suite that is free to download. Blender is a revolutionary tool for making 3D art digitally. With Blender, you can make art assets for games, like we do in this course.
Included in this course is material for beginners to get comfortable with the interfaces. Please note that we reuse this content in similar courses because it is introductory material. You can find some material in this course in the following related courses:
No experience necessary. Even if you’ve never coded before, you can take this course.
One of the best features is that you can watch the tutorials at any speed you want. This means you can speed up or slow down the video if you want to.
This course is project-based, where you follow along with your instructor to build real projects. The best way for you to learn how to make your own app is to follow project-based training content.
You learn practical, employable skills immediately. You can put the apps you make in this course in your portfolio!
Why Xcode?
Xcode is Apple's FREE software for app development. Xcode is user-friendly and allows you to make complex and creative apps.
At the same time Xcode is accessible for beginners who want to make simple apps. Swift 4.0 is the programming language to learn if you want to make apps for Apple products.
You will also get access to the eBook "The Ultimate iOS 10, Xcode 8 Developer Book. Build 30 apps." by Mammoth Interactive (normally $89.99).
Your teachers will teach you practical skills using real-world examples. Take this course to build your portfolio today!