Developing applications and games in Unity engine - Matej Jariabka, Rudolf Kajan - gamifi.cc
-
Upload
gamificc -
Category
Entertainment & Humor
-
view
894 -
download
0
Transcript of Developing applications and games in Unity engine - Matej Jariabka, Rudolf Kajan - gamifi.cc
Introducing gamifi.cc
• Indie studio from Brno, CZ: David Jozefov, Rudolf Kajan, Matej Jariabka, Martin Wilczak
• Experience with games for Win, XBOX360, Windows Phone
• FireFighters: Whatever It Takes! (world finals of Microsoft Imagine Cup 2011 – 3th place in Game Design category)
• Yggdrasil: The Tree of Life (world finals of Microsoft Imagine Cup 2012 – 6th place in Game Design category)
• The Great Wobo Escape multiplatform 2.5D action puzzle platformer, in development since 01/2013
How we discovered Unity
• We have a game, we don’t have an engine
• What is a trend, what others use?
• Platforms!
• No re-inventing the wheel!
• Thinking 5+ years in advance
Why is Unity a clear choice for us
• Easy multiplatform development minimizes risks!
• Easy to use
• We can create what we need (editor)
• Minimum training required
Is Unity popular on Kickstarter?
40% of games in TOP15 Most Funded Video Games use Unity *As of 11/2013
Unity vs Kickstarter 1/2
How much $USD Unity games raised on Kickstarter.com?
$16 403 255 6/15 games in TOP15 Most Funded Video Games *As of 11/2013
Unity vs Kickstarter 2/2
How to choose a game engine
• Don’t start to make a game by creating an engine!
• Know your limits and goals
• Make choice in line with your business model
• Choose for a game type - FPS, MMO, Casual
• Don’t be afraid to invest (a little)
– tools, support, licence type, modules, etc.
Alternatives
• CryEngine
– Several options for licensing
– Visually rich & powerful
• Unreal Engine
– Flexible for game genres, multiplatform
– Free, or 25% from profits over $50k
Why Unity - PROS
• Unity if free (low/limited price)
• Multiplatform tool
• Support and ongoing development of new feature
• Asset store, plugins
• Indie standard
Unity for non-developers
• Easily integrate non-developing people into the flow
• Less and less complex work for dev team
Prototyping Build Test Deploy
Quick feedback
• Does it look good?
• Is it working as expected?
• Does it fit to the concept?
Prototyping
Testing is independent on Dev team
1. In Unity: File -> Build & Run
2. Publish through Unity Web Player, send .apk, .etc.
3. Testing, bug reports, etc.
Test
Unity Web Player
• Share a whole game through just one URL
• Win / Mac OS + any browser is required - universal
• Unity: File -> Build & Run -> Web Player
• Dropbox \ Public directory (copy public link)
Unity Hardware Statistics
• Useful for setting a minimal HW requirements
• Simple but free, anonymous stats: OS version, GPU,
CPU, memory size, display size, device manufacturer
• For Web player, Mobile, Editor
• stats.unity3d.com
Smart Multipurpose Interactive Learning Environment
• With visually impaired
players in mind
• Educational aspects
• GarageGames
• Torque
#1 - Use Tools!
• Time is better used making a polished game
• Easy to ramp up new people
• Moving between projects is easier (2D/3D game switch)
• Lots of available tools (Unity)
• BUILD GAME, NOT TECH!
• Reinventing the wheel is a trap – 75% done easily, rest super-expensive
#2 - Iterate Small Idea
• “Like <insert AAA title name>, but better!”
• Multi-platform cloud-based MMORPG with social
aspects
#3 - Stay Visible
XNA
• Lots of o-o-b functionality
• Documentation
• Community content
• VS integration
• Just MS platforms
• Future Support
Core Framework
Graphics Audio Input Math Storage
Extended Framework
Application Model Content Pipeline
Games
Starter Kits Custom game logic Custom Content Components
Platform
DirectX XDK .NET Framework .NET CF
Networking Gamer Services
XNA – Content Pipeline
.X
.TGA
Content
DOM Importer .FBX Processor
Content
Compiler .XNB
XNA Content Pipeline Flow
• Lots of o-o-b
functionality
• Documentation
• Community content
• VS integration
• Just MS platforms
• Future Support
Yggdrasil:
The Tree of Life
• Simulation
• Cloud-based
• IC Entry - Sydney
• 6th Place
Worldwide
• Educational
Aspects
Yggdrasil: The Tree of Life
• Azure
• Worker Roles
• Compute Roles
• Cloud DB
• Message Queues
• Thin Client
• AR
Yggdrasil: The Tree of Life
• Azure
• Worker Roles
• Compute Roles
• Cloud DB
• Message Queues
• Thin Client
• AR
Fast Prototyping
• Quick Pivots
• Test ideas – TuDee,
then develop your tools
(NOT engine first)
• TEST ON PEOPLE!!!
(HCI, video recs,
notes) - they will do
stuff you do not expect!
Unity
• Extendable Editor
• Browser & Inspector
• Scene Hierarchy
• Mecanim
• Shuriken
• Scripting
• Networking
• Asset Store
Current Consumer Mobiles
• What you can reasonably expect to run on current consumer mobiles:
• Lightmapped static geometry. But beware of: • Using a lot of alpha-test shaders
• Bumpmapping, especially using built-in shaders.
• High polygon count
• Animated characters, even with fancy shaders! But beware of: • Massive crowds or high-poly characters
• 2D games with sprites. But beware of: • Overdraw, or, lots of layers drawn on top of eachother.
• Particle effects. But beware of: • High density on large particles. (Lots of particles drawn on top of each other. This is another overdraw situation)
• Ridiculous numbers of particles, or particle colliders.
• Physics. But beware of: • Mesh colliders.
• Lots of active bodies
Current Consumer Mobiles
• What you CANNOT reasonably expect to run on current consumer mobiles:
• Fullscreen screen image effects like glow and depth of field.
• Dynamic per-pixel lighting (multiple lights marked Important and not baked into the lightmap) • Every affected object is drawn an additional time for every dynamic
light you use, and this gets slow quickly.
• Real time shadows on everything • Unity 4 offers native support for real time shadows on mobile
platforms, but their use must be very judicious, and likely limited to higher-end devices.
Tools We Use and Love
• Unity3d
• Blender
• GIMP
• Zbrush
• BlackInk
• TuDee
• VS + UnityVS
• Serializer
• GameAnalytics
Tools We Use and Love
• Unity3d
• Blender
• GIMP
• Zbrush
• BlackInk
• TuDee
• VS + UnityVS
• Serializer
• GameAnalytics
Level Design
• Idea – Level Beat Chart
• TuDee / Excel
• Generated Prototype Scene in Unity
• Parallel Testing / Adjustments
– Actors
• State Machines, FSM, experimental FFSM, INDIE RAIN!
– Triggers
Batching
Rule of thumb: don’t use more then a few hundred draw calls per frame on mobiles or a few thousand
on desktops for current hardware.