Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Bouncy Shapes Project For this project we will be creating a desktop application that renders shapes as they bounce around the screen inside of a
Bouncy Shapes Project For this project we will be creating a desktop application that renders shapes as they bounce around the screen inside of a desktop window. Learning Objectives Be able to familiarize yourself with medium-sized projects (100's of LOC) as a starting point for your project. * *Incorporate existing components into a project Extend the existing architecture by designing new components that fit into an existing system Develop new dasses and functions Simple Rendering Engine I have provided a really simple rendering and windowing engine as a starting point for this project. You can find the starter code here https://github.com/mokonzi131/bouncy-shapes-initial. Managing operating system windows and rendering are beyond the scope of this course. As such you are not expected to extend any of the windowing/rendering components of this project. The starter project already handles the following for you: *Creates and manages a Window's Desktop Application event loop Windows message processing and the Interfacing with Direct2D and managing device resources * Running a simple timed update /render cycle All of this above mentioned stuff is handled in Main.cpp as well as some of the rendering and device management in the CirdeRenderer and SquareRenderer cdasses. There is quite a bit of code in Main.cpp, however you will mostly be interested in the constructor of the SampleWindow class. The way a rendering engine works is that it cydes through a loop at some pre-defined rate (like 60 cydes per second). On each cyde, it makes two important calls, the first Update is responsible for updaging the objects in a scene, and the second Render is responsible for drawing the current scene to the window The starting code for this project has all the framework in place for the rendering loop. In Scene.cpp, the two functions Update and Render will be called 60 times each second. Bouncy Shapes Project For this project we will be creating a desktop application that renders shapes as they bounce around the screen inside of a desktop window. Learning Objectives Be able to familiarize yourself with medium-sized projects (100's of LOC) as a starting point for your project. * *Incorporate existing components into a project Extend the existing architecture by designing new components that fit into an existing system Develop new dasses and functions Simple Rendering Engine I have provided a really simple rendering and windowing engine as a starting point for this project. You can find the starter code here https://github.com/mokonzi131/bouncy-shapes-initial. Managing operating system windows and rendering are beyond the scope of this course. As such you are not expected to extend any of the windowing/rendering components of this project. The starter project already handles the following for you: *Creates and manages a Window's Desktop Application event loop Windows message processing and the Interfacing with Direct2D and managing device resources * Running a simple timed update /render cycle All of this above mentioned stuff is handled in Main.cpp as well as some of the rendering and device management in the CirdeRenderer and SquareRenderer cdasses. There is quite a bit of code in Main.cpp, however you will mostly be interested in the constructor of the SampleWindow class. The way a rendering engine works is that it cydes through a loop at some pre-defined rate (like 60 cydes per second). On each cyde, it makes two important calls, the first Update is responsible for updaging the objects in a scene, and the second Render is responsible for drawing the current scene to the window The starting code for this project has all the framework in place for the rendering loop. In Scene.cpp, the two functions Update and Render will be called 60 times each second
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started