Final Presentation CS491B ALAIN VINIOT DE LARA Spring 2007, CSULA.

Slides:



Advertisements
Similar presentations
A Natural Interactive Game By Zak Wilson. Background This project was my second year group project at University and I have chosen it to present as it.
Advertisements

Introduction Games have always been a fundamental part of human life. Space storm “ عاصفة الفضاء” is a 3D SCI-FI game that consists of two stages presented.
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Building Models modified by Ray Wisman Ed Angel Professor of Computer Science,
Graphics Pipeline.
H YPE M INIGOLF Natale Letizia IT-University of Copenhagen Engine Programming.
CS 4363/6353 INTRODUCTION TO COMPUTER GRAPHICS. WHAT YOU’LL SEE Interactive 3D computer graphics Real-time 2D, but mostly 3D OpenGL C/C++ (if you don’t.
Move With Me S.W Graduation Project An Najah National University Engineering Faculty Computer Engineering Department Supervisor : Dr. Raed Al-Qadi Ghada.
INTRODUCTION. Painting with numbers! Aspects Modeling Rendering Animation.
Scenegraph. Scenegraph Nodes - all implement a run function Leaf/Geo Nodes - typedefs of sgNode superclass –Poly Mesh A geo node that stores a list of.
CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Adv. Computer Graphics CS6500, Spring 2003.
Graphics Systems I-Chen Lin’s CG slides, Doug James’s CG slides Angel, Interactive Computer Graphics, Chap 1 Introduction to Graphics Pipeline.
Ch 1 Intro to Graphics page 1CS 367 First Day Agenda Best course you have ever had (survey) Info Cards Name, , Nickname C / C++ experience, EOS experience.
Linear Algebra Review CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2005.
3D Rendering with JOGL Introduction to Java OpenGL Graphic Library By Ricardo Veguilla
University of Texas at Austin CS 378 – Game Technology Don Fussell CS 378: Computer Game Technology 3D Engines and Scene Graphs Spring 2012.
Introduction to 3D Graphics John E. Laird. Basic Issues u Given a internal model of a 3D world, with textures and light sources how do you project it.
University of Texas at Austin CS 378 – Game Technology Don Fussell CS 378: Computer Game Technology Beyond Meshes Spring 2012.
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 19 Other Graphics Considerations Review.
1 Computer Graphics Week13 –Shading Models. Shading Models Flat Shading Model: In this technique, each surface is assumed to have one normal vector (usually.
Introduction to 3D Computer Graphics and Virtual Reality McConnell text.
In the name of God Computer Graphics Modeling1. Today Introduction Modeling Polygon.
Virtual reality. Tasks 3D digital model from planes 3D digital model of existing objects Office work Field observations Solid modeling Photogrammetry.
3D Visualisation of Simulation Data. Informal Seminar 08/03/2004. By Chris Sweet.
CSE 381 – Advanced Game Programming Basic 3D Graphics
Invitation to Computer Science 5th Edition
Advanced Computer Graphics March 06, Grading Programming assignments Paper study and reports (flipped classroom) Final project No written exams.
Week 2 - Wednesday CS361.
Computer Graphics World, View and Projection Matrices CO2409 Computer Graphics Week 8.
Real-Time Computer Graphics. Introduction Aims The aim of the module is to provide a good grounding in the main techniques and algorithms of real-time.
Buffers Textures and more Rendering Paul Taylor & Barry La Trobe University 2009.
09/09/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Event management Lag Group assignment has happened, like it or not.
CS 425 Game Programming I Jan M. Allbeck. Outline  Introductions  Expectations  Tools and setup  Quick introduction to C++ and Visual Studio  What.
CS 450: COMPUTER GRAPHICS REVIEW: INTRODUCTION TO COMPUTER GRAPHICS – PART 2 SPRING 2015 DR. MICHAEL J. REALE.
1 CO Games Concepts Week 20 Matrices continued Gareth Bellaby.
Course Introduction and Terminology CGDD 4113 – 3D MODELING AND ANIMATION.
SKM 4200 Computer Animation Chapter 4: Animation (3D Computer Animation – Part 1)
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Computer Graphics and Multimedia Systems, University of Siegen, Germany 1 GPU-Based Responsive Grass Jens Orthmann, Christof Rezk-Salama, Andreas Kolb.
CSE 381 – Advanced Game Programming Code Setup.
Lecture 6: 3D graphics Concepts 1  Principles of Interactive Graphics  CMSCD2012  Dr David England, Room 718,  ex 2271 
Computer Graphics The Rendering Pipeline - Review CO2409 Computer Graphics Week 15.
Spin Image Correlation Steven M. Kropac April 26, 2005.
The Rendering Pipeline CS 445/645 Introduction to Computer Graphics David Luebke, Spring 2003.
2008/9/24 Kim, HyungSeok. HyungSeok Kim, Konkuk University Part I: Framework – 1. Windows creation – 2. Renderer – 3. Lights and Objects/Model loading.
CO1301: Games Concepts Dr Nick Mitchell (Room CM 226) Material originally prepared by Gareth Bellaby.
What is Computer Graphics?. 2 Objectives In this lecture, we explore what computer graphics is about We will give a historical introduction.
INTRODUCTION TO FLASH CS5 Understanding the Workspace (Review: Animation Key Terms)
CGDD 4003 THE MATH LECTURE (BOILED DOWN, YET LIGHTLY SALTED)
Point Sprites Course Information CVG: Programming 4 My Name: Mark Walsh Website: Recommended.
Advanced Computer Graphics Spring 2014 K. H. Ko School of Mechatronics Gwangju Institute of Science and Technology.
Sky Boxes and Vector Math 2 Course Information CVG: Programming 4 My Name: Mark Walsh Website:
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
Geometric Objects and Transformations. Graphics Pipeline How can we render a triangle? High-level description: – Represent the 3D geometry – Transform.
Maths & Technologies for Games Graphics Optimisation - Batching CO3303 Week 5.
컴퓨터 그래픽스 Real-time Rendering 1. Introduction.
What are Computer Graphics Basically anything that is on you Monitor – This includes the text that you will see Text isn’t Advanced Graphics But…. Understanding.
Copyright © Curt Hill Meshes A Little More to Know.
Introduction to Computer Graphics
Spring 2006 G5BAGR – Advanced Computer Graphics
Games Development Practices 3D Modelling
- Introduction - Graphics Pipeline
Scene Manager Creates and places movable objects like lights and cameras so as to access them efficiently, e.g. for rendering. Loads and assembles world.
Math Fundamentals Maths revisit.
Photorealistic Rendering vs. Interactive 3D Graphics
가상현실 Virtual Reality (CSCE 458 Fall 2004)
Rigid Body Dynamics Simulation
Modeling 101 For the moment assume that all geometry consists of points, lines and faces Line: A segment between two endpoints Face: A planar area bounded.
Understanding Theory and application of 3D
Chapter I Introduction
03 | Creating, Texturing and Moving Objects
Presentation transcript:

Final Presentation CS491B ALAIN VINIOT DE LARA Spring 2007, CSULA

Introduction Project Description  The Project is a Base framework for 3D Video Game.  Program load Mesh from 3D files.  3D Viewer has the look and feel of the natural environment.  Player interact with the 3D Physics World.

What to expect from a modern 3D Video Game ?  Nowadays 3D Video Games are very sophisticated.  Program require a sophisticated and generally expensive rendering device.  Most of the 3D video game use DirectX or OpenGL to interface with rendering device.

What basic skills are need to make a 3D Video Game ?  Familiar with Content Creation (3d Editors, Maya, 3d Studio Max,Photoshop)  Expertise in 3D game Engine.  Advanced Mathematics and Physics for computer graphics.

3D Files  I use my own 3D editor to make the 3d meshes. The editor can store multiple objects, polygons, rotators, translators, animation, lights, physics objects, The editor is rudimentary and it’s still a work in progress.

Storing Typical 3d Objects.  -Number of Lights  -Array of Lights  -Number of Cameras  -Array of Cameras  -Number of Polygons  -Array of Polygons  …….Many other type of objects…..

What information are needed to store a polygon object ?  Number of Points  Array of Vertices  Array or Scalars  Normal Vector  Normal Collision Vectors and Scalars  Center of Polygon  Index of Texture in catalog list file

Types of Polygons used  Because the 3D world interact Physically with the viewer, different type of polygons are needed.  Wall Polygon  Ceiling and Floor Polygon  Depending on which type of Polygon, the scalar and normal vectors are aligned in a specified manner to be used during Collision Detection.

Wall Polygon  A wall Polygon is a polygon that is almost “standing up”. The collision normal vector is aligned with the horizontal plane, but its length is dependent on the farthest vertex in front of the viewer. The scalar vectors are perpendicular to its segment.

Wall Polygon Side-view Schema

Wall Polygon in Front-View

Ceiling/Floor Polygon  A floor or ceiling polygon interact with the viewer’s feet or head. The scalars of a floor are aligned horizontally, so we can detect the if the viewer is on top of it. It is also perpendicular to its segment.  The Scalars and Collision normal vectors are pre-calculated in the 3D editor in advance so that the program does not have to do it during run-time.

Floor/Ceiling Polygon Schema

How to Process Polygon for Collision Detection ?  The 3D virtual world can be huge with many polygons, processing collision detection is computationally expensive, we need to filter out and process which polygons interact with the player/viewer.  The polygons are categorized in the 3d editor in advance to ease the viewer from determining the type of polygon.  We filter out the polygon by its distance from the viewer, at the end we only have few polygon candidates to process for collision.

Interaction Viewer and 3d World The player has to physically interact with the 3D world. Everywhere the player is placed or advancing, we need to check its speed vector and place it correctly. Explanation on next slide.

Interaction Viewer and 3d World Schema.

Using The Newton Physics Engine.  I added some features in my 3D editor to store 3D objects. The Delphi header translated from C++ was limited to a few objects like sphere and cube. I only used cubes to represent 3D objects. I discovered that the Newton Engine was sometime instable, so I had limit some of my previous plans on the project.

Conclusion  Through my activity on this project, I advanced my knowledge and understanding of using a physics engine like Newton. It provided me with the opportunity to implement a difficult matter which is collision detection. Although it only covered a small portion of the skill needed to implement a Video Game, I progressed from hypothesis to direct immersion by working on this project which gave me a view of this exciting field.