Entity Performance

Introduction The Entity Performance tab provides options for improving the runtime performance (reducing CPU usage) for an entity. This tab is only needed for games which include a very large number of entities (typically many hundreds or thousands of instances). Common types of entities which benefit from this tab are enemies and bullets. Entity Performance[…]

01 – Introduction

Introduction Even if you’ve used FlatRedBall for a while you may not be familiar with exactly what a “manually updated” object is. The reason for this is because the option to make things manually updated exists almost exclusively for performance reasons. Technically one might want to manually update objects to achieve custom behavior as well,[…]

FlatRedBall:Tutorials:Render State Changes:Creating a Project

Introduction The rest of these tutorials will present ideas for reducing render breaks, but we’ll do so by working on a real project and measuring the result of our changes. Creating a Project This tutorial assumes you are familiar with how to create a FlatRedBall project. Although the following tutorials will be almost all code[…]

FlatRedBall.PositionedObject.TimedActivity

Introduction The TimedActivity method is a method used by PositionedObjects (and objects which inherit from PositionedObject such as Sprite) to perform common every-frame logic. The TimedActivity method performs the following: Adjusts position by velocity and acceleration Adjusts velocity by acceleration Adjusts rotation by rotation velocity Adjusts velocity by drag (linear representation) Calls TimedActivityRelative. Adjusts RealVelocity[…]

TimeFactor

Introduction TimeFactor is a property which can be used to make time run slower or faster. By default TimeFactor is set to 1, meaning time runs regularly. A value of 2 will make time run twice as fast. TimeFactor can modify the rate at which Currenttime increases and also multiplies the SecondDifference value. Example The[…]

TimeManager

Introduction The TimeManager provides functionality for measuring differences in time. The TimeManager can be used to tell how much time has passed since an event has occurred, how much time is left before a predetermined event will occur, how much time the last frame took to process and render, and to profile code performance. Retrieving[…]