CPSC 427 Video Game Programming

Total Page:16

File Type:pdf, Size:1020Kb

CPSC 427 Video Game Programming Helge Rhodin CPSC 427 Video Game Programming Transformations for Skeleton Kinematics 1 © Alla Sheffer, Helge Rhodin Recap: Fun to play? https://www.androidauthority.com/level-design-mobile-games-developers- make-games-fun-661877/ 2 © Alla Sheffer, Helge Rhodin Recap: Indirect relationships Value of a piece • It is not possible to get a knight for 3 pawns • But one can ‘trade’ pieces • A currency How to determine the value? • Ask the users • Auction house 3 © Alla Sheffer, Helge Rhodin Recap: Relationships • Linear relations • Exponential relations • Triangular relationship • 1, 3, 6, 10, 15, 21, 28, … • The difference increases linearly • The function has quadratic complexity • Periodic relations 4 © Alla Sheffer, Helge Rhodin Asymptotic analysis? • Linear * linear? • Linear + linear? • Linear + exponential? • Linear * exponential? 5 © Alla Sheffer, Helge Rhodin Numerical Methods - Optimization • Iterative optimizers • Single variable? Exponential Target function • Multiple variables? Linear approx. • Gradient descent? Constant approx. Lecture 14: https://youtu.be/ZNsNZOnrM50 • Balancing demo starts at 1h20 • Optimizer used at ~ 1h30 6 © Alla Sheffer, Helge Rhodin Difficulties: • Placement of towers changes the time damage is dealt • Path of enemies can be hindered to increase time ➢ Measure during playtest ➢ cross-play • Some enemies are resistant to fire/magic/…? • kind of a periodic feature 7 © Alla Sheffer, Helge Rhodin Counter Measures • Transitive Mechanics • Repair costs • Consumables (food, potions, …) • Tax 8 © Alla Sheffer, Helge Rhodin A/B Testing Testing two variants of your game (with and w/o a feature) • randomized participants (same pool) • with respect to a measurable objective (e.g., clicks on website) Related to • two-sample hypothesis testing • Clinical tests, e.g., testing of a COVID-19 vaccine • Placebo effect 9 https://www.optimizely.com/optimization-glossary/ab-testing/ © Alla Sheffer, Helge Rhodin Logistics 10 © Alla Sheffer, Helge Rhodin M4 updated requirement User study Carefully balance one aspect of your game (e.g., movement-speed, health points, strength, bonus,…). • Report on the theoretical analysis • Change log with testing 11 © Alla Sheffer, Helge Rhodin M4 Advanced shaders? • Use ShaderToy.com • Demo in Lecture 4 https://youtu.be/S97-fYMv4Xk 45 minute mark 12 © Alla Sheffer, Helge Rhodin Upcoming lectures: Tuesday: • Working in teams • Supported by TA Thursday: • Last formal lecture: • Skeleton Animation continued • Summary and Outlook Tuesday (April 13.): • M4 grading with TAs Monday (April 19.): • Final cross play, including industry jury and awards 13 © Alla Sheffer, Helge Rhodin Final cross play Room Purpose Timeline: 1 Team 1 – open cross-play 7 – 8 pm: scheduled (10 minutes) cross play 2 Team 2 – open cross-play 7 – 8:30 pm: open cross play (those not with jury) … … 8 – 8:30 pm: jury votes, student votes are counted 8:30 – 9 pm: awards! 12 Team 12 – open cross-play 13 Jury 1 (Skybox) – scheduled 10 min slots Communication: 14 Jury 2 (EA) – scheduled 10 min slots On Slack to reach beyond zoom rooms … … • OK to include jury? 20 Overflow – breakout for open cross-play 21 Overflow – breakout for open cross-play Presence: … … • Mandatory! 14 © Alla Sheffer, Helge Rhodin Today Becoming an expert on transformation • Mental picture • Math • Practical examples Composite transformations • Articulated skeleton motion • Skeleton animation 15 © Alla Sheffer, Helge Rhodin Recap: Transformations Lecture 3, 20 minute mark • https://youtu.be/l9xQUxJT7fg 16 © Alla Sheffer, Helge Rhodin From local object to camera coordinates Camera Camera World World coordinates coordinates coordinates coordinates y y x x x x y y object -> world world -> camera object -> camera transform projection projection * transform 17 © Alla Sheffer, Helge Rhodin Recap: GLSL Vertex shader The OpenGL Shading Language (GLSL) • Syntax similar to the C programming language • Build-in vector operations x and y coordinates • functionality as the GLM library our assignment template uses of a vec2, vec3 or vec4 world object void main() -> camera -> world { // Transforming The Vertex vec3 out_pos = projection * transform * vec3(in_pos.xy, 1.0); gl_Position = vec4(out_pos.xy, in_pos.z, 1.0); } float vector of 3 (vec3) and 4 (vec4) floats (32 bit) 18 © Alla Sheffer, Helge Rhodin Affine transformations • Linear transformations + translations • Can be expressed as 2x2 matrix + 2 vector • E.g. scale+ translation: x' x'2 02 00xx Ttxx = + y'=y'0 20 02yy +Tty z' 0 0 1 z 0 © Alla Sheffer, Helge Rhodin Modeling Transformation Adding a third coordinate x' x'2 02 00xx Ttxx = + y'=y'0 20 02yy +Tty z' 0 0 1 z 0 Affine transformations are now linear • one 3x3 matrix can express: 2D rotation, scale, shear, and translation © Alla Sheffer, Helge Rhodin Forward transformations • Given position, scale, angle • Compute transformation matrix • Transform the object • Examples? • Later: Inverse transformations 21 © Alla Sheffer, Helge Rhodin Parallax scrolling background Further objects • are smaller • move slower Multiple layers! Weak perspective projection • Approximates perspective projection 22 © Alla Sheffer, Helge Rhodin Parallax scrolling background Ingredients: • Multiple layers • One sprite per layer x' 2 0 0 x t • One transformation per layer x • Scale y' down= 0 with2 distance0 y + ty • Move z' inversely 0 0 proportional1 z to0 the distance 23 © Alla Sheffer, Helge Rhodin 24 © Alla Sheffer, Helge Rhodin TRANSFORMATION COMPOSITION p x • What operation rotates XY by around P = ? py P P © Alla Sheffer, Helge Rhodin TRANSFORMATION COMPOSITION p x • What operation rotates XY by around P = ? py • Answer: • Translate P to origin P P © Alla Sheffer, Helge Rhodin TRANSFORMATION COMPOSITION p x • What operation rotates XY by 휃 < 0 around P = ? py • Answer: • Translate P to origin • Rotate around origin by • Translate back P P © Alla Sheffer, Helge Rhodin TRANSFORMATION COMPOSITION ( p , p ) (− px ,− p y ) T x y RT (V ) 1 0 p cos − sin 01 0 − p v x x x = 0 1 p sin cos 00 1 − p v y y y 0 0 1 0 0 10 0 1 1 © Alla Sheffer, Helge Rhodin two interpretations cos 휃 − sin 휃 푝푥 ⋅ (1−cos 휃) + 푝푦 ⋅ sin휃 푣푥 sin 휃 cos 휃 푝푦 ⋅ (1−cos 휃) + 푝푥 ⋅ sin휃 푣푦 0 0 1 1 P P © Alla Sheffer, Helge Rhodin TRANSFORMING COORDINATES cos 휃 − sin 휃 푝푥 ⋅ (1−cos 휃) + 푝푦 ⋅ sin휃 푣푥 sin 휃 cos 휃 푝푦 ⋅ (1−cos 휃) + 푝푥 ⋅ sin휃 푣푦 0 0 1 1 P P © Alla Sheffer, Helge Rhodin TRANSFORMING COORDINATES cos 휃 − sin 휃 푝푥 ⋅ (1−cos 휃) + 푝푦 ⋅ sin휃 푣푥 sin 휃 cos 휃 푝푦 ⋅ (1−cos 휃) + 푝푥 ⋅ sin휃 푣푦 0 0 1 1 P P © Alla Sheffer, Helge Rhodin TRANSFORMING COORDINATES cos 휃 − sin 휃 푝푥 ⋅ (1−cos 휃) + 푝푦 ⋅ sin휃 푣푥 sin 휃 cos 휃 푝푦 ⋅ (1−cos 휃) + 푝푥 ⋅ sin휃 푣푦 0 0 1 1 P P © Alla Sheffer, Helge Rhodin TRANSFORMING COORDINATE FRAME cos 휃 − sin 휃 푝푥 ⋅ (1−cos 휃) + 푝푦 ⋅ sin휃 푣푥 sin 휃 cos 휃 푝푦 ⋅ (1−cos 휃) + 푝푥 ⋅ sin휃 푣푦 0 0 1 1 P P © Alla Sheffer, Helge Rhodin TRANSFORMING COORDINATE FRAME cos 휃 − sin 휃 푝푥 ⋅ (1−cos 휃) + 푝푦 ⋅ sin휃 푣푥 sin 휃 cos 휃 푝푦 ⋅ (1−cos 휃) + 푝푥 ⋅ sin휃 푣푦 0 0 1 1 P P © Alla Sheffer, Helge Rhodin TRANSFORMING COORDINATE FRAME cos 휃 − sin 휃 푝푥 ⋅ (1−cos 휃) + 푝푦 ⋅ sin휃 푣푥 sin 휃 cos 휃 푝푦 ⋅ (1−cos 휃) + 푝푥 ⋅ sin휃 푣푦 0 0 1 1 P P © Alla Sheffer, Helge Rhodin TRANSFORMING COORDINATE FRAME Columns are new basis vectors (and new origin)! cos 휃 − sin 휃 푝푥 ⋅ (1−cos 휃) + 푝푦 ⋅ sin휃 푣푥 sin 휃 cos 휃 푝푦 ⋅ (1−cos 휃) + 푝푥 ⋅ sin휃 푣푦 0 0 1 1 P P © Alla Sheffer, Helge Rhodin TRANSFORMING COORDINATE FRAME 풗풙 (풑 ,풑 ) 휽 (−풑 ,−풑 ) 푻 풙 풚 푹 푻 풙 풚 풗풚 ퟏ P P © Alla Sheffer, Helge Rhodin TRANSFORMING COORDINATE FRAME 푣푥 (풑 ,풑 ) 휃 (−푝 ,−푝 ) 푻 풙 풚 푅 푇 푥 푦 푣푦 1 P © Alla Sheffer, Helge Rhodin TRANSFORMING COORDINATE FRAME 푣푥 (풑 ,풑 ) 휃 (−푝 ,−푝 ) 푻 풙 풚 푅 푇 푥 푦 푣푦 1 P © Alla Sheffer, Helge Rhodin TRANSFORMING COORDINATE FRAME 푣푥 (푝 ,푝 ) 휽 (−푝 ,−푝 ) 푇 푥 푦 푹 푇 푥 푦 푣푦 1 P © Alla Sheffer, Helge Rhodin TRANSFORMING COORDINATE FRAME 푣푥 (푝 ,푝 ) 휃 (−풑 ,−풑 ) 푇 푥 푦 푅 푻 풙 풚 푣푦 1 P © Alla Sheffer, Helge Rhodin TRANSFORMING COORDINATE FRAME World Coordinate Object Coordinate Frame Frame 푣′푥 푣푥 (푝푥,푝푦) 휃 (−푝푥,−푝푦) 푣′푦 = 푇 푅 푇 푣푦 1 1 P P © Alla Sheffer, Helge Rhodin TWO INTERPRETATIONS OF COMPOSITE World Coordinate Object Coordinate Frame Frame 푣′푥 푣푥 (푝푥,푝푦) 휃 (−푝푥,−푝푦) 푣′푦 = 푇 푅 푇 푣푦 1 1 1) read from inside-out as transformation of object 2) read from outside-in as transformation of the coordinate frame © Alla Sheffer, Helge Rhodin Transformation Hierarchies © Alla Sheffer, Helge Rhodin Transformation Hierarchies Scenes have multiple coordinate systems • Often strongly related • Parts of the body • Object on top of each other • Next to each other… Independent definition is bug prone Solution: Transformation Hierarchies © Alla Sheffer, Helge Rhodin Transformation Hierarchy Examples 2 4 5 3 1 y x © Alla Sheffer, Helge Rhodin Transformation Hierarchy Examples 푀1 = 푇푟(푥,푦) ⋅ 푅표푡휃1 2 푀2 = 푀1 ⋅ 푇푟(2.5,5.5) ⋅ 푅표푡 휃2 4 푀3 = 푀2 ⋅ 푇푟(0,−3.5) ⋅ 푅표푡 휃3 5 3 1 y x © Alla Sheffer, Helge Rhodin Transformation Hierarchies world torso LUleg RUleg LUarm RUarm head LLleg RLleg LLarm RLarm Lfoot Rfoot Lhand Rhand rot(z, ) trans(0.30,0,0) © Alla Sheffer, Helge Rhodin Transformation Hierarchy Quiz M.setIdentity(); M = M*Translation(4,1,0); M = M*Rotation(pi/4,0,0,1); House.matrix = M; Which color house will we draw? A. Red B. Blue C. Green FW D. Orange E. Purple © Alla Sheffer, Helge Rhodin Hierarchical Modeling Advantages • Define object once, instantiate multiple copies • Transformation parameters often good control knobs • Maintain structural constraints if well-designed Limitations • Expressivity: not always the best controls • Can’t do closed kinematic chains • E.g., how to keep a hand on the hip? © Alla Sheffer, Helge Rhodin Forward vs.
Recommended publications
  • Multi-User Game Development
    California State University, San Bernardino CSUSB ScholarWorks Theses Digitization Project John M. Pfau Library 2007 Multi-user game development Cheng-Yu Hung Follow this and additional works at: https://scholarworks.lib.csusb.edu/etd-project Part of the Software Engineering Commons Recommended Citation Hung, Cheng-Yu, "Multi-user game development" (2007). Theses Digitization Project. 3122. https://scholarworks.lib.csusb.edu/etd-project/3122 This Project is brought to you for free and open access by the John M. Pfau Library at CSUSB ScholarWorks. It has been accepted for inclusion in Theses Digitization Project by an authorized administrator of CSUSB ScholarWorks. For more information, please contact [email protected]. ' MULTI ;,..USER iGAME DEVELOPMENT '.,A,.'rr:OJ~c-;t.··. PJ:es·~nted ·t•o '.the·· Fa.8lllty· of. Calif0rr1i~ :Siat~:, lJniiV~r~s'ity; .•, '!' San. Bernardinti . - ' .Th P~rt±al Fu1fillrnent: 6f the ~~q11l~~fuents' for the ;pe'gree ···•.:,·.',,_ .. ·... ··., Master. o.f.·_s:tience•· . ' . ¢ornput~r •· ~6i~n¢e by ,•, ' ' .- /ch~ng~Yu Hung' ' ' Jutie .2001. MULTI-USER GAME DEVELOPMENT A Project Presented to the Faculty of California State University, San Bernardino by Cheng-Yu Hung June 2007 Approved by: {/4~2 Dr. David Turner, Chair, Computer Science ate ABSTRACT In the Current game market; the 3D multi-user game is the most popular game. To develop a successful .3D multi-llger game, we need 2D artists, 3D artists and programme.rs to work together and use tools to author the game artd a: game engine to perform \ the game. Most of this.project; is about the 3D model developmept using too.ls such as Blender, and integration of the 3D models with a .level editor arid game engine.
    [Show full text]
  • USER GUIDE 1 CONTENTS Overview
    USER GUIDE 1 CONTENTS Overview ......................................................................................................................................... 2 System requirements .................................................................................................................... 2 Installation ...................................................................................................................................... 2 Workflow ......................................................................................................................................... 3 Interface .......................................................................................................................................... 8 Tool Panel ................................................................................................................................................. 8 Texture panel .......................................................................................................................................... 10 Tools ............................................................................................................................................. 11 Poly Lasso Tool ...................................................................................................................................... 11 Poly Lasso tool actions ........................................................................................................................... 12 Construction plane .................................................................................................................................
    [Show full text]
  • Ac 2008-325: an Architectural Walkthrough Using 3D Game Engine
    AC 2008-325: AN ARCHITECTURAL WALKTHROUGH USING 3D GAME ENGINE Mohammed Haque, Texas A&M University Dr. Mohammed E. Haque is a professor and holder of the Cecil O. Windsor, Jr. Endowed Professorship in Construction Science at Texas A&M University at College Station, Texas. He has over twenty years of professional experience in analysis, design, and investigation of building, bridges and tunnel structural projects of various city and state governments and private sectors. Dr. Haque is a registered Professional Engineer in the states of New York, Pennsylvania and Michigan, and members of ASEE, ASCE, and ACI. Dr. Haque received a BSCE from Bangladesh University of Engineering and Technology, a MSCE and a Ph.D. in Civil/Structural Engineering from New Jersey Institute of Technology, Newark, New Jersey. His research interests include fracture mechanics of engineering materials, composite materials and advanced construction materials, architectural/construction visualization and animation, computer applications in structural analysis and design, artificial neural network applications, knowledge based expert system developments, application based software developments, and buildings/ infrastructure/ bridges/tunnels inspection and database management systems. Pallab Dasgupta, Texas A&M University Mr. Pallab Dasgupta is a graduate student of the Department of Construction Science, Texas A&M University. Page 13.173.1 Page © American Society for Engineering Education, 2008 An Architectural Walkthrough using 3D Game Engine Abstract Today’s 3D game engines have long been used by game developers to create dazzling worlds with the finest details—allowing users to immerse themselves in the alternate worlds provided. With the availability of the “Unreal Engine” these same 3D engines can now provide a similar experience for those working in the field of architecture.
    [Show full text]
  • Design and Development of a Roguelike Game with Procedurally Generated Dungeons and Neural Network Based AI
    Design and development of a Roguelike game with procedurally generated dungeons and Neural Network based AI. Video game Design and Development Degree Technical Report of the Final Degree Project Author: Andoni Pinilla Bermejo Tutor: Raúl Montoliu Colás Castellón de la Plana, July 2018 1 Abstract In games, other aspects have always been preferred over artificial intelligence. The graphic part is usually the most important one and it alone can use a huge amount of resources, leaving little space for other features such as AI. Machine Learning techniques and Neural Networks have re-emerged in the last decade and are very popular at the moment. Every big company is using Machine Learning for different purposes and disciplines, such as computer vision, engineering and finances among many others. Thanks to the progress of technology, computers are more powerful than ever and these artificial intelligence techniques can be applied to videogames. A clear example is the recent addition of the Machine Learning Agents to the Unity3D game engine. This project consists of the development of a Roguelike game called Aia in which procedural generation techniques are applied to create procedural levels, and Machine Learning and Neural Networks are the main core of the artificial intelligence. Also, all the necessary mechanics and gameplay are implemented. 2 Contents List of Figures 5 List of Tables 6 1 Technical proposal 7 1. 1 Summary 7 1.2 Key Words 7 1. 3 Introduction and motivation 7 1.4 Related Subjects 8 1.5 Objectives 8 1.6 Planning 8 1.7 Expected
    [Show full text]
  • Design and Development of a Roguelike Game with Procedurally Generated Dungeons and Neural Network Based AI
    Design and development of a Roguelike game with procedurally generated dungeons and Neural Network based AI. Video game Design and Development Degree Technical Report of the Final Degree Project Author: Andoni Pinilla Bermejo Tutor: Raúl Montoliu Colás Castellón de la Plana, July 2018 1 Abstract In games, other aspects have always been preferred over artificial intelligence. The graphic part is usually the most important one and it alone can use a huge amount of resources, leaving little space for other features such as AI. Machine Learning techniques and Neural Networks have re-emerged in the last decade and are very popular at the moment. Every big company is using Machine Learning for different purposes and disciplines, such as computer vision, engineering and finances among many others. Thanks to the progress of technology, computers are more powerful than ever and these artificial intelligence techniques can be applied to videogames. A clear example is the recent addition of the Machine Learning Agents to the Unity3D game engine. This project consists of the development of a Roguelike game called Aia in which procedural generation techniques are applied to create procedural levels, and Machine Learning and Neural Networks are the main core of the artificial intelligence. Also, all the necessary mechanics and gameplay are implemented. 2 Contents List of Figures 5 List of Tables 6 1 Technical proposal 7 1. 1 Summary 7 1.2 Key Words 7 1. 3 Introduction and motivation 7 1.4 Related Subjects 8 1.5 Objectives 8 1.6 Planning 8 1.7 Expected
    [Show full text]
  • Basic Graphics and Game Engine
    Computer Graphics Foundation to Understand Game Engine CS631/831 Quick Recap • Computer Graphics is using a computer to generate an image from a representation. computer Model Image 2 Modeling • What we have been studying so far is the mathematics behind the creation and manipulation of the 3D representation of the object. computer Model Image 3 Modeling: The Scene Graph • The scene graph captures transformations and object-object relationships in a DAG • Objects in black; blue arrows indicate instancing and each have a matrix Robot Head Body Mouth Eye Leg Trunk Arm Modeling: The Scene Graph • Traverse the scene graph in depth-first order, concatenating transformations • Maintain a matrix stack of transformations Robot Visited Head Body Unvisited Mouth Eye Leg Trunk Arm Matrix Active Stack Foot Motivation for Scene Graph • Three-fold – Performance – Generality – Ease of use • How to model a scene ? – Java3D, Open Inventor, Open Performer, VRML, etc. Scene Graph Example Scene Graph Example Scene Graph Example Scene Graph Example Scene Description • Set of Primitives • Specify for each primitive • Transformation • Lighting attributes • Surface attributes • Material (BRDF) • Texture • Texture transformation Scene Graphs • Scene Elements – Interior Nodes • Have children that inherit state • transform, lights, fog, color, … – Leaf nodes • Terminal • geometry, text – Attributes • Additional sharable state (textures) Scene Element Class Hierarchy Scene Graph Traversal • Simulation – Animation • Intersection – Collision detection – Picking •
    [Show full text]
  • Course 26 SIGGRAPH 2006.Pdf
    Advanced Real-Time Rendering in 3D Graphics and Games SIGGRAPH 2006 Course 26 August 1, 2006 Course Organizer: Natalya Tatarchuk, ATI Research, Inc. Lecturers: Natalya Tatarchuk, ATI Research, Inc. Chris Oat, ATI Research, Inc. Pedro V. Sander, ATI Research, Inc. Jason L. Mitchell, Valve Software Carsten Wenzel, Crytek GmbH Alex Evans, Bluespoon Advanced Real-Time Rendering in 3D Graphics and Games – SIGGRAPH 2006 About This Course Advances in real-time graphics research and the increasing power of mainstream GPUs has generated an explosion of innovative algorithms suitable for rendering complex virtual worlds at interactive rates. This course will focus on recent innovations in real- time rendering algorithms used in shipping commercial games and high end graphics demos. Many of these techniques are derived from academic work which has been presented at SIGGRAPH in the past and we seek to give back to the SIGGRAPH community by sharing what we have learned while deploying advanced real-time rendering techniques into the mainstream marketplace. Prerequisites This course is intended for graphics researchers, game developers and technical directors. Thorough knowledge of 3D image synthesis, computer graphics illumination models, the DirectX and OpenGL API Interface and high level shading languages and C/C++ programming are assumed. Topics Examples of practical real-time solutions to complex rendering problems: • Increasing apparent detail in interactive environments o Inverse displacement mapping on the GPU with parallax occlusion mapping o Out-of-core rendering of large datasets • Environmental effects such as volumetric clouds and rain • Translucent biological materials • Single scattering illumination and approximations to global illumination • High dynamic range rendering and post-processing effects in game engines Suggested Reading • Real-Time Rendering by Tomas Akenine-Möller, Eric Haines, A.K.
    [Show full text]
  • 3D Game Development with Unity a Case Study: a First-Person Shooter (FPS)
    PENG XIA 3D Game Development with Unity A Case Study: A First-Person Shooter (FPS) Game Helsinki Metropolia University of Applied Sciences Bachelor of Engineering Information Technology Thesis 28 February 2014 Abstract Author(s) PENG XIA Title 3D Game Development with Unity A Case Study: A First-Person Shooter (FPS) Game Number of Pages 58 pages Degree Bachelor of Engineering Degree Programme Information Technology Specialisation option Software Engineering Instructor(s) Markku Karhu, Head of Degree Programme in Information Technology The project was carried out to develop a 3D game that could be used for fun and as an efficient way of teaching. The case of the project was a First-Person Shooting Game which the player had to search the enemies on a terrain map and kill the enemies by shooting. There were a few enemies on the terrain and they possessed four kinds of Artifi- cial Intelligence (AI). The enemies would discover the player if the player entered into the range of patrol or shot them, and the enemies made long-range damage to the player. The player had to slay all enemies to win the game. If the player was slain, then the game was over. The Health Points (HPs) were used to judge whether the player or enemies died. The player could restore HPs according to touching the Heal Box or finishing a mission. The game contains two main game scenes, one is the Graphic User Interfaces (GUI) sce- ne and another one is the game scene. The player could play on or off the Background Music, view the information of the controller and the author and start or end this game on the GUI scene.
    [Show full text]
  • Photo-Realistic Scene Generation for Pc-Based Real-Time Outdoor Virtual Reality Applications
    PHOTO-REALISTIC SCENE GENERATION FOR PC-BASED REAL-TIME OUTDOOR VIRTUAL REALITY APPLICATIONS E. Yılmaza, , H.H. Maraş a, Y.Ç. Yardımcı b * a GCM, General Command of Mapping, 06100 Cebeci, Ankara, Turkey - (eyilmaz, hmaras)@hgk.mil.tr b Informatics Institute, Middle East Technical University, 06531 İnönü Bulvarı, Ankara, Turkey - [email protected] KEY WORDS: Outdoor Virtual Environment, Synthetic Scene, Crowd Animation ABSTRACT: In this study we developed a 3D Virtual Reality application to render real-time photo-realistic outdoor scenes by using present-day mid-class PCs. High quality textures are used for photo-realism. Crowds in the virtual environment are successfully animated. Ability of handling thousands of simultaneously moving objects is an interesting feature since that amount of dynamic objects is not common in similar applications. Realistic rendering of the Sun and the Moon, visualization of time of day and atmospheric effects are other features of the study. Text to speech is used to inform user while experiencing the visual sensation of moving in the virtual scene. Integration with GIS helped rapid and realistic creation of virtual environments. The overall rendering performance is deemed satisfactory when we consider the achieved interactive frame rates. 1. INTRODUCTION 1.2 Type of Virtual Reality Systems Virtual Environments (VE) where we can pay a visit are no We can categorize VR systems into two main groups: non- longer far away from us. Developments in rendering immersive and immersive. Non-immersive systems let the user capabilities of graphics hardware and decrease in the prices can observe virtual world through conventional display devices.
    [Show full text]
  • Introduction to Graphics Software Development for OMAP™ 2/3 February 2008 Texas Instruments 3
    WHITE PAPER By Clay D. Montgomery, Introduction to Graphics Graphics Software Engineer Media & Applications Processor Platforms Texas Instruments Software Development for OMAP™ 2/3 Executive Summary Introduction The latest OMAP devices offer break- The Texas Instruments OMAP 2 and 3 device families feature powerful graphics through graphics capabilities for a wide acceleration hardware that rival the capabilities of desktop computers of just a few range of applications including personal years ago. The field of software tools, industry standards and API libraries for navigation, scalable user interfaces and exploiting these new devices is complex and evolving so rapidly that it can be diffi- gaming. This is made possible by ad- cult to know where to start. The purpose of this report is to give enough of an intro- vanced graphics acceleration hardware duction to the field of 2D and 3D graphics that informed decisions can be made and support through industry standard about which tools and standards best fit the goals of any particular application APIs like OpenGL® ES, OpenVG™ and development project. This is only a starting point and only a minimal understanding Direct3D® Mobile. But which of these is of computer graphics concepts is assumed. This report also provides many pointers the best solution for your application and to more definitive information sources on the various topics that are introduced, for how do you get started on software devel- further research. For all topics, throughout this report, be sure to also utilize opment? This paper attempts to answer Wikipedia (www.wikipedia.org). these questions without requiring much Computer graphics can be as simple as a library of functions that draw geometric experience with graphics concepts or shapes, such as lines, rectangles or polygons on a 2-dimensional plane, or copy pix- terminology.
    [Show full text]
  • Utilizing a Game Engine for Interactive 3D Topographic Data Visualization
    International Journal of Geo-Information Article Utilizing A Game Engine for Interactive 3D Topographic Data Visualization Dany Laksono and Trias Aditya * Department of Geodetic Engineering, Faculty of Engineering, Universitas Gadjah Mada (UGM), Yogyakarta 55284, Indonesia * Correspondence: [email protected] Received: 30 May 2019; Accepted: 25 July 2019; Published: 15 August 2019 Abstract: Developers have long used game engines for visualizing virtual worlds for players to explore. However, using real-world data in a game engine is always a challenging task, since most game engines have very little support for geospatial data. This paper presents our findings from exploring the Unity3D game engine for visualizing large-scale topographic data from mixed sources of terrestrial laser scanner models and topographic map data. Level of detail (LOD) 3 3D models of two buildings of the Universitas Gadjah Mada campus were obtained using a terrestrial laser scanner converted into the FBX format. Mapbox for Unity was used to provide georeferencing support for the 3D model. Unity3D also used road and place name layers via Mapbox for Unity based on OpenStreetMap (OSM) data. LOD1 buildings were modeled from topographic map data using Mapbox, and 3D models from the terrestrial laser scanner replaced two of these buildings. Building information and attributes, as well as visual appearances, were added to 3D features. The Unity3D game engine provides a rich set of libraries and assets for user interactions, and custom C# scripts were used to provide a bird’s-eye-view mode of 3D zoom, pan, and orbital display. In addition to basic 3D navigation tools, a first-person view of the scene was utilized to enable users to gain a walk-through experience while virtually inspecting the objects on the ground.
    [Show full text]
  • Volumetric Atmospheric Effects Rendering
    UNIVERSITY OF ZAGREB FACULTY OF ELECTRICAL ENGINEERING AND COMPUTING MASTER THESIS No. 1594 Volumetric Atmospheric Effects Rendering Dean Babić Zagreb, June 2018 Acknowledgments Firstly, I would like to thank my mentor, Prof. dr. sc. Željka Mihajlović for the time she dedicated towards my education and the effort she put into my projects. I would especially want to thank my girlfriend for her support and help with proofreading my work. Finally, I would like to thank my dear family and friends for their help, support and good times during all these years throughout my education. Contents 1. Introduction ...................................................................................................... 1 1.1 Cloud rendering ......................................................................................... 1 1.2 Practical solution ....................................................................................... 2 1.3 Restrictions and references ....................................................................... 2 2. Cloud physics .................................................................................................. 4 2.1 Types of clouds ......................................................................................... 4 2.2 Behavior .................................................................................................... 5 2.3 Lighting ...................................................................................................... 5 2.3.1 Absorption..........................................................................................
    [Show full text]