A complex particle may require larger particle data structure. There are a couple of ways of reducing the particle structure:
1) Pack the data in the structure and
2) Allocate particles from multiple size particle memory chunk pools - for example a basic particle structure can contain most frequently used particle types and another larger particle structure can contain the full complex data structure.
Aligning the data size to factor of cache line size (such as 32, 64, or 128 bytes) and aligning the particle data memory to cache line boundary reduces data cache misses. Preferably particle data is in contiguous memory to establish a regular access pattern and to take advantage of sequential data pre-fetch. If the option is available, then data cache pre-fetch is implemented in the source code. The accumulative cache misses penalty reduction over processing tens or even hundreds of thousands of particles is significant results in an overall improvement in performance of a particle engine.
Wednesday, February 15. 2012
Particle System Optimization
Posted by Noor Khawaja
in Particle System
Data cache is a critical aspect to a CPU driven high performance optimized particle engine. Without proper utilization of data cache a particle system with just a couple thousand particles may become inefficient. This will be particularly visible when particle properties bloat the particle data structure. Three factors play an important role in data cache friendly architecture of a particle engine:
1) Small particle data structure size,
2) Particle data alignment to cache line boundary, and
3) Keeping particle data in contiguous memory.
1) Small particle data structure size,
2) Particle data alignment to cache line boundary, and
3) Keeping particle data in contiguous memory.
Tuesday, January 31. 2012
Making Particle Effects Production Efficient: The Solution
Posted by Noor Khawaja
in Particle Effects Production
In my previous blog I mentioned the lack of time to implement a user friendly particle effects authoring tool interface will cause slow particle effects content creation. In addition to a user friendly interface it also needs to be design for efficiency so that the effects artist can iterate and try variations of their effects quickly. It will be easier for the artist to use the particle editor and not struggle with technical details of the tool or have too many dialog switches in their workflow which slows down productivity.
Friday, January 27. 2012
Making Particle Effects Production Efficient: The Problem
Posted by Noor Khawaja
in Particle Effects Production
Often in development, particle effects production begins after other graphics display technologies and tools are in place. The graphics engine lays down the foundation for all rendering and animation. It includes the scene graph, models, shaders and other components most of which may be utilized by the particle effects engine as well. Various tools are implemented during this pre-production phase and again those tools have priority, which make the core of the game such as the level editor.
The particle effects engine and authoring tool implementation don’t always get the most time in the pre-production phase. Sometimes particle engine features are added as the need arises during content development. With not enough time on hand, the particle effects authoring tool doesn’t quite get the user friendly interface for rapid and high quality content creation and integration. Yet particle effects from a long list have to be created rather quickly and integrated into the game.
The particle effects engine and authoring tool implementation don’t always get the most time in the pre-production phase. Sometimes particle engine features are added as the need arises during content development. With not enough time on hand, the particle effects authoring tool doesn’t quite get the user friendly interface for rapid and high quality content creation and integration. Yet particle effects from a long list have to be created rather quickly and integrated into the game.
Tuesday, January 17. 2012
Real Time Particle Editor
Posted by Noor Khawaja
in Particle System
A particle editor is a particle effects authoring tool for special effects designers. Particle editors are used for real time effects such as those used in video games and simulations and another category of particle editors is used to create pre-rendered particle effects that composite into film and video. The real time particle editor has specific features that target real time graphics display technologies and the feature set is limited for the sake of higher performance.
These features include Dynamic Level of Detail, Effect Definition Data Export for multiple target platforms (such as Sony PlayStation® 3, Xbox 360, and PC), Batch Effect Definition Data Export for build automation, Live Update to Target Application to aid particle effects integration and live editing, Custom Data Export for user application related data, Customizable Particle Dynamics (Physics) to extend the particle system behaviors, Flipbook Texture and UVs animation for efficient rendering and design techniques, and Texture Atlas Generation to optimize texture state changes during render.
In a real time graphics application environment the primary rendering primitive for majority of particle effects is billboards. These are camera facing quad polygons. This gives some illusion of volume to the effect particles. The trick lends to efficient methods for calculating and displaying the particles.
These features include Dynamic Level of Detail, Effect Definition Data Export for multiple target platforms (such as Sony PlayStation® 3, Xbox 360, and PC), Batch Effect Definition Data Export for build automation, Live Update to Target Application to aid particle effects integration and live editing, Custom Data Export for user application related data, Customizable Particle Dynamics (Physics) to extend the particle system behaviors, Flipbook Texture and UVs animation for efficient rendering and design techniques, and Texture Atlas Generation to optimize texture state changes during render.
In a real time graphics application environment the primary rendering primitive for majority of particle effects is billboards. These are camera facing quad polygons. This gives some illusion of volume to the effect particles. The trick lends to efficient methods for calculating and displaying the particles.
Monday, January 16. 2012
Visual Effects Software
Posted by Cindy Smith
in Visual Effects Software
The computer graphics and visual effects software that in layman terms lets the programmers make fire, explosions, smoke, moving water, sparks, falling leaves, clouds, fog, snow, dust, meteor tails, hair, fur, grass, or abstract visual effects like glowing trails, magic spells and similar stuff that would have been extremely difficult to make using the conventional rendering techniques. Fork Particle Inc. offers particle engine and visual effects software that lets you make breathtaking computer graphics, visual effects and other details quickly, and also allowing you a greater control.
Fork Particle Inc. was formed by a former Electronics’ Arts, Konami and Acclaim Entertainment engineer and Administrator, Mr. Noor Khawaja who has over 15 years of experience in gaming industry. Under his leadership, Fork particle has exceled to become one of the leading game middleware and particle effects company which has a proven track record of offering successful services and solutions to some of the very best in the business.
Fork Particle Inc. was formed by a former Electronics’ Arts, Konami and Acclaim Entertainment engineer and Administrator, Mr. Noor Khawaja who has over 15 years of experience in gaming industry. Under his leadership, Fork particle has exceled to become one of the leading game middleware and particle effects company which has a proven track record of offering successful services and solutions to some of the very best in the business.
(Page 1 of 2, totaling 11 entries)
next page »