Hoops Visualize HPS  version 2018-SP2
Hoops Visualize HPS 3D Rendering Engine
Looking for a senior C++ dev?
I'm looking for work. Hire me!
HPS::Transparency Class Reference

This is the Transparency Class. More...

#include <hps.h>

Public Types

enum  Method : uint32_t {
  Method::None,
  Method::Blended,
  Method::ScreenDoor
}
 Transparency Method. More...
 
enum  Algorithm : uint32_t {
  Algorithm::None,
  Algorithm::Painters,
  Algorithm::ZSortNicest,
  Algorithm::ZSortFastest,
  Algorithm::DepthPeeling,
  Algorithm::WeightedBlended
}
 Transparency Algorithm. More...
 
enum  AreaUnits : uint32_t {
  AreaUnits::Percent,
  AreaUnits::Pixels
}
 Transparency Area Units. More...
 
enum  Preference {
  Preference::Nicest,
  Preference::Fastest
}
 Transparency Preference. More...
 

Private Member Functions

 Transparency ()
 

Detailed Description

This is the Transparency Class.

Member Enumeration Documentation

◆ Algorithm

enum HPS::Transparency::Algorithm : uint32_t
strong

Transparency Algorithm.

Enumerator
None 

No sorting will be performed, but transparent objects will be deferred (drawn on top).

If overlapping transparent objects are present the rendering will not be accurate.

Painters 

Will produce a completely accurate rendering of transparent objects which are overlapping other transparent objects, but tends to be slow.

ZSortNicest 

Sorts every transparent triangle in a shell by its mid-point.

This algorithm can result in rendering artifacts at locations where transparent objects intersect with one another.

ZSortFastest 

Sorts transparent tristrips in a shell by the mid-point of the entire tristrip.

This algorithm can result in rendering artifacts at locations where transparent objects intersect with one another.

DepthPeeling 

Non-sorting technique based on multi-pass drawing, and leverages hardware acceleration to quickly produce an accurate rendering.

Will give varying accuracy and performance results based on the number of 'layers' that are specified by the user.

WeightedBlended 

Non-sorting technique which blends and approximates transparent objects based on the distance from the camera.

◆ AreaUnits

enum HPS::Transparency::AreaUnits : uint32_t
strong

Transparency Area Units.

Enumerator
Percent 

Transparency Area Units.

Pixels 

Transparency Area Units.

◆ Method

enum HPS::Transparency::Method : uint32_t
strong

Transparency Method.

Enumerator
None 

This will disable transparency, overriding all other transparency settings and forcing geometry to be opaque.

Blended 

The transparent object will be blended with the color of the underlying object.

ScreenDoor 

This is a pseudo-transparency algorithm that sacrifices visual quality to improve performance.

◆ Preference

Transparency Preference.

Enumerator
Nicest 

Quality should be favored at the possible cost of performance.

Fastest 

Performance should be favored at the possible cost of some loss in image quality.

Constructor & Destructor Documentation

◆ Transparency()

HPS::Transparency::Transparency ( )
inlineprivate

The documentation for this class was generated from the following file: