2. About CBE software
• Company started in 2006 by Jan Kavan and Lukáš Medek
• In 2011 joined forces with KUBITA s.r.o., Engineering and
technological company
• We do:
• Video games for PC, Mac, Linux and Mobile
platforms (including VR), Current generation
consoles
• Interactive visualisations
• Data analysis
• Occasional webdesign / web development (if we really have to)
3. Our games so far:
• Ghost in the Sheet (PC) (2007 / 2008)
• J.U.L.I.A. (PC) (2012)
• J.U.L.I.A. Untold (2012, 2015) (iOS, PC)
• Vampires! / Crazy Vampires (PC, Mac, iOS,
Android) (2012 / 2013)
• Boredom of Agustín Cordes (PC, Freeware 2013)
• J.U.L.I.A.: Among the Stars (PC, Mac, Linux) (2014)
• Someday You’ll Return (in production)
6. What ARE Blueprints?
• Visual node-based scripting language
• Similar to the concept of “classes”
• Extremely fast to prototype and reusable
• Since 4.14 easily convertable to C++ native
code => no longer as performance heavy
• Comfortable debugging features integrated in
the environment
• Intiuitive for level designers and artists
• They communicate very well in conjuction
with C++ code
7. Different types of Blueprints
• Level blueprint – level specific things
• Blueprint class (Actors) – reusable actors
• Blueprint component – mechanics attachable
to actors
• Blueprint function / macro libraries –
reusable functions / algorithms
• Animation blueprints – all you need for
animating skeletal meshes and then some more
• Material blueprints
• Data blueprints, interfaces, UMG widget blueprints,
etc.
8. Key features of blueprint classes
• Contain both visuals, data and code
• Everything is context sensitive
• Global / local variables / data structures /
object or class references
• Functions and macros
• Inheritance support through child blueprints!
• Class defaults settings
• Interfaceable
• Multiple “graphs” to make things tidy
• Custom events and event dispatchers
9. Key flow events for class blueprints
• Construction script – whenever instance is
created (also when placed or changed in editor!)
• Begin Play – After the actor appears in an
actual world (eg. Play button was pressed)
• Tick – each frame (unless specified otherwise)
• Assignable to tick groups
• Begin Overlap / End Overlap – as soon as
overlap collision event occurs
• Hit – as soon as actor receives collision hit event
• End Play – when the actor cease to exist
• Custom events – do whatever you want