
Explore game development in Swift 4 with hands-on projects, from frameworks and practical game-building to self-paced app store optimization strategies that drive downloads.
Learn how the UIKit framework supports simple game development and animations with labeled buttons and table views, while lacking game physics and update loops.
Introduce Simon Says gameplay in Swift 4 by building a color sequence memory game that handles touch input and explores basic multiplayer functionality for building more complex games.
In this first real hands on video we will create a project for our application and start thinking about it's design and layout in the storyboard
We take what we have developed so far and apply some modifications to our buttons so that they are shaped like a circle and also provide clear interaction feedback for the users
We learn how we can animate our buttons to play color sequences which the user then has to memorize
We now have to use our color buttons so the user can repeat the color sequence he or she saw before and beat the game
We will add scoring for two players and make our little Simon Says app competitive by being able to play against your friends
Create a SpriteKit project in Xcode, choosing the game template and Swift, then convert it to a blank project and configure the scene, view, and debug options.
Explore SKNode and SKScene as the building blocks, master the parent-child hierarchy, coordinate systems, and properties like position, x scale, y scale, and frame, then apply layering.
Create red box placeholders with SKSpriteNode, adjusting size, color, and anchor point; add textured sprites from assets, center them on the frame, and control draw order with position.
Master actions in swift game development, including move to a point, rotate by angle, durations, completion handlers, and building groups, sequences, and repeats while removing actions by key.
Explore how the physics world handles gravity, collisions, and various physics bodies in scenes, including dynamic and static bodies, mass, friction, damping, and restitution.
Add physics bodies to sprites and apply gravity to enable interaction with other nodes. Experiment with circle and rectangle shapes, edge boundaries, and restitution to understand physics simulations in SpriteKit.
Learn to use asset catalog and a sprite atlas to animate a running dog with frames from a texture atlas, and control the animation with tap to start or stop.
Explore SKTileMapNode basics by using Xcode's visual editor to create a scene file, set a 64×64 tile, and build a 12×21 map from assets.
Focus on essential node classes for this game, including scalable notes for rendering text with adjustable font, color, and size, and shaped notes for complex shapes.
Build a SpriteKit button class in Swift 4 that initializes with a default image, an integer parameter action, and an index, and handles touches to update alpha and trigger action.
Set up a new 2D color game project in Xcode, clean the template boilerplate, and configure a game scene with a portrait orientation and suitable view settings.
Organize a Swift 4 game project with groups and asset catalogs, add a color switch sprite, and set a color background. Spawn the ball in the game scene.
Explore defining physics categories with bit masks, attach circular physics bodies to colors and ball, set collision and contact rules, and tune gravity for gameplay.
This lecture defines color enumerations and a colors array, tracks the current color index, spawns balls, rotates the switch on taps, checks matches, triggers game over, and notes upcoming scoring.
Build a new menu scene with a logo from the asset catalog and three labels for play, high score, and recent score, handle taps to present the game scene.
Persist the high score and recent score using user defaults, compare the current score to the saved high score, and return from the game to the menu.
Create an empty template project in Swift for the Angry Birds app, set landscape orientation, and initialize a game scene from the case file to begin building the game.
Learn to add and configure a camera node, position it to show the bottom-left edge, and set the scene to resizeFill for device sizes.
Implement a pan gesture recognizer on the scene view and wire a pan handler to update the game camera while dragging, then constrain movement with a custom camera class.
Implement a two-finger pinch gesture recognizer to zoom the game camera, adjust camera scale and position, update constraints, and clamp zoom with a max scale to prevent overzooming.
Introduce a bird class for the Angry Birds project, with a bird type enum (red, blue, yellow, gray) and colors, spawning the bird at map anchor and preparing for drag-to-launch.
Add a drag-and-launch mechanic by introducing a grab property, handling touches began to capture the bird, and moving it to follow the finger until launch within a constrained radius.
Learn to implement physics categories, dynamic physics bodies, and launch mechanics for a bird in a Swift 4 game, using anchors, impulses, constraints, and collision borders.
Attach the camera to the bird using constraints, including a zero-range distance constraint. Set up the scene’s edge-loop physics body and collision masks to keep the bird in bounds.
Define a round state machine with ready, flying, finished, and animating to guide game flow, touches, camera resets, and spawning new birds.
Create a block class with wood, stone, and glass types, health, and a damage threshold, and attach a physics body for in-scene obstacles.
Implement a block impact system that applies collision force to health, destroys blocks at zero, changes texture at a damage threshold, and handles bird-block contacts with a physics contact delegate.
Implement and refine physics contact handling for block–block, block–edge, and bird–block collisions, applying damage and updating the flying state as needed. Consolidate repeated cases using Swift's multi‑case syntax, and transition to textured sprite notes to visualize wood, stone, and glass planks.
Import and map textures for bird graphics from an asset catalog, replacing color with textures; implement an aspect scale extension to resize nodes while preserving aspect ratio.
Implement a scene manager delegate to switch between menu, level, and game scenes in the Angry Birds Swift app with a shared present method and a custom sprite button.
Learn to animate a bird's flight by loading textures from a sprite atlas with an animation helper, building flying frames, and running a looping action that stops on landing.
Load level data from a plist to configure per-level bird sets, initialize a level data struct, and update the game scene to spawn the correct birds for each level.
Add background images to the menu and level screens using assets, sprites, and aspect scale to fill the scene, position behind buttons, and test on iPhone 10 and iPad Pro.
Add a visual slingshot using a new sprite, then position and scale the slingshot and bird with anchor and z-order so the bird sits neatly in the slingshot.
Add enemy nodes to levels, size and name them, and attach as children while tracking remaining enemies with a property and observer. Implement creation and collision handling to destroy enemies.
Implement a protocol delegate pattern for in-game popups and define three methods for button tabs. Wire the game scene to present the pop up and handle menu, next, and retry.
Learn to set up a SceneKit template project in Xcode, explore a basic 3D scene with a rotating ship, and test gestures on a real device.
Initialize a SceneKit camera and position it in the scene, then create a box geometry node and add it to the root to reveal a visible cube.
Enable show statistics, camera control, and default lighting in scene view to interact with the cube using camera gestures and monitor frame rate and draw calls.
Explore SceneKit basics by creating and positioning primitive shapes like boxes, spheres, and pyramids, combining them into new models, and introducing basic physics and gravity in a 3D scene.
Explore SceneKit basics by adding a physics body to a cube, enabling gravity and dynamic behavior, with automatic shape generation and optional custom shapes.
Create a new Xcode project template for a game, delete boilerplate, configure portrait mode and hidden status bar, then implement a view controller to initialize an empty SCNScene and SCNView.
Set up a floor plane with green diffuse color and zero reflectivity, then position a camera above it and rotate it minus ninety degrees on X axis to look down.
Create a lane system by defining grass and road lane types, implementing a lane class with textured geometry, and rendering twenty lanes using scene assets.
Create a reusable Swift function in a utils file to decide grass or road lines using a random helper, then tilt the camera and add ambient directional lights for depth.
Create ambient and directional lights to illuminate scene, enable shadows, set shadow color, position and orient them, attach to a lights container, and align with the camera to enhance depth.
Import the chicken model as the player node, apply its texture, set scale to 0.05 and position to 0.3 above the ground, then enable swipe gestures to move and jump.
Build vegetation on lanes by loading tree and hedge models from the Artaud Scene Assets Catalog, then position random trees or hedges on grass lanes while skipping roads.
Add vehicle models and textures to the assets, including blue truck, fire truck, and car, with correct scale and lane placement. Implement traffic logic for lanes, directions, and random spawning.
Implement drive right and drive left actions, apply them to all traffic, update vehicle positions, and recycle vehicles that exit the map while varying speeds by vehicle type.
Create a head up display for the game, featuring a menu with a logo, tap to play, and a points label, using a custom font.
Implement game states (menu, playing, game over), a head-up display, and score tracking in a Swift 4 road game. Learn scene transitions, initialization, gesture setup, and a reset workflow.
Explore the basics of SceneKit, learn to create 3D models with MagicaVoxel, integrate them into your game, implement 3D movement patterns, and manage notes efficiently.
Boost downloads through app store optimization by optimizing the description, keywords, screenshots, videos, ratings, and reviews. Treat the App Store as a search engine to appear among top results.
Learn to design a simple, recognizable app icon that scales down crisply by using a single focal element, vector graphics, and minimal text, tested on devices.
Download magical voxel, create 3d voxel models on a 126x126x126 grid, and master brushes like line, center, mirror, and voxel brush to build and export models for games.
Learn how to submit games built in swift 4 to the app store, including testing on iPhone and iPad, preparing screenshots, permissions, artwork rights, and in appurtenances for transactions.
Prepare for app store submission by creating a wildcard app ID, distributing certificates, provisioning profiles, and testing on devices via the Apple Developer site and Xcode.
Learn to prepare and submit an iTunes Connect app using Xcode, including adding icons in the asset catalog, configuring bundle ID, pricing, availability, metadata, previews, keywords, and support details.
Become a mobile game developer by building some of the most famous iOS Games like Angry Birds, Crossy Road, Color Switch and more.
Mobile game development is an incredibly extensive and exciting topic, which is why we have created this complete course that will allow you to become part of the amazing world of mobile game development.
In each chapter of this course we’ll learn all there is to know about a certain framework. We’ll take an in depth look at its functionality and the theory behind it. Then we’re going to use what we’ve learned and apply it by creating multiple games from scratch.
We’ll start with simple games while getting to know the UIKit Framework, once we’ve gotten more comfortable we’ll advance to developing multiple 2D games with the SpriteKitFramework, which is the basis for most 2 dimensional iOS Games. We’ll start this chapter by developing our own version of the popular Color Switch app that will teach us already a lot about this framework.
Then we’ll develop an incredible Angry Birds game from scratch, where we will learn how to design levels, work with physics and so much more.
We’ll then move on to the SceneKit Framework which is the basis for most of the 3 dimensional iOS games. To really understand the concepts we’re going to be working with them while developing our own version of the famous Crossy Road app.
While developing this amazing app we will also teach you how to create your own 3D Models in MagicaVoxel that you can use in your own games or even sell.
We don’t just want to teach you how to develop games in this course. We want to really help you develop your game and publish it on the app store. That’s why we have an entire chapter dedicated to App Store Optimization, teaching you how to optimize your app store entry, so that you can get the most amount of downloads for your game. We’ll look at how you can use keywords, videos, screenshots, ratings and reviews to your advantage and increase your number of downloads.
This course is designed to provide the perfect balance between theory, working on real life projects and exercises to really enable anybody to create their own iOS Games.
It doesn’t matter if you already have some experience in the subject or not. This complete course will teach you all you need to know to make your game ideas become a reality - no matter what framework you would like to use. You get all of the resources like project files, graphics and much more and you’re free to do with them whatever you like.
We’ll also give you valuable tips that go far beyond the development of games and if you run into any problems or have any questions while taking this course, you can always count on us to help you. So if you want to learn how to make your own games for iOS and become a real game developer you should really join this course. I look forward to seeing you in the course.
This course was produced using Swift 4.0 and Xcode 9. The course is currently undergoing maintenance to update all projects to Xcode 10 and the downloads will be available shortly.