| 
    PCG Lib
    
   Library for procedural content generation 
   | 
 
specifies position, extends and relations to neighboring rooms More...
#include <Room.h>
Public Member Functions | |
| Room () | |
| Room (RoomType rt, Point3d center, float width, float length, float height=PCG_DEFAULT_ROOM_HEIGHT) | |
| Point3d | LLB () | 
| Point: LowerLeftBottom.  More... | |
| Point3d | URB () | 
| Point: UpperRightBottom.  More... | |
| Point3d | ULB () | 
| Point: UpperLeftBottom.  More... | |
| Point3d | LRB () | 
| Point: LowerRightBottom.  More... | |
| Point3d | LLT () | 
| Point: LowerLeftTop.  More... | |
| Point3d | URT () | 
| Point: UpperRightTop.  More... | |
| Point3d | ULT () | 
| Point: UpperLeftTop.  More... | |
| Point3d | LRT () | 
| Point: LowerRightTop.  More... | |
| std::string | PrintRoomMeasurements (bool extensive=false) | 
| std::vector< Face > | GenerateGeometry3D () | 
| std::vector< Face > | GenerateGeometry3DIndexed () | 
| void | GenerateTargets (RNG *rng) | 
Static Public Member Functions | |
| static std::vector< DoorDirection > | DetermineClosedWalls (std::vector< DoorDirection > doors) | 
Public Attributes | |
| Point3d | _center | 
| center of room  More... | |
| float | _width | 
| width of room  More... | |
| float | _length | 
| length of room  More... | |
| float | _height | 
| height rom room  More... | |
| RoomType | _roomType | 
| type of room  More... | |
| std::vector< DoorDirection > | _doors | 
| doors leading to hallways or special rooms  More... | |
| std::vector< Room > | _adjecentRooms | 
| list of adjecent rooms  More... | |
| std::vector< Target > | _targets | 
| list of targets in room  More... | |
Private Member Functions | |
| std::vector< uint32_t > | GenerateClosedWallIndices3D (std::vector< DoorDirection > closedWalls) | 
| std::vector< Face > | GenerateClosedWallFaces3D (std::vector< DoorDirection > closedWalls, Vec3 maxTextureCoordinates=Vec3{1.0f, 1.0f, 1.0f}) | 
| void | SetRoomTexture (Face &face, FaceType ft) | 
| std::vector< Target > | GenerateTargets2 (RNG *rng) | 
specifies position, extends and relations to neighboring rooms
| skr::pcg::Room::Room | ( | ) | 
default constrcutor uses default values: Center at 0/0/0, Typr Room, width and lenght 5.0, height PCG_DEFAULT_ROOM_HEIGHT
| skr::pcg::Room::Room | ( | RoomType | rt, | 
| Point3d | center, | ||
| float | width, | ||
| float | length, | ||
| float | height = PCG_DEFAULT_ROOM_HEIGHT  | 
        ||
| ) | 
Constructor
| rt | Type of new room | 
| center | Center of new room | 
| width | Width of new room | 
| length | Length of new room | 
| height | HEIGHT of new room. Default PCG_DEFAULT_ROOM_HEIGHT | 
      
  | 
  static | 
Determines closed walls of this room based on given doors
| doors | list of DoorDirections | 
      
  | 
  private | 
Generates faces for closed walls
| closedWalls | List of DoorDirections, but meaning closed walls | 
| maxTextureCoordinates | specifies maximum texture coordinates aligned to the faces. Defaults to 1.0/1.0/1.0 | 
      
  | 
  private | 
Generate indices for vertices of closed walls
| closedWalls | list of DoorDirections meaning the closed walls | 
| std::vector< Face > skr::pcg::Room::GenerateGeometry3D | ( | ) | 
Generates room 3D vertices for this room array of indices is present, but empty return list of faces
| std::vector< Face > skr::pcg::Room::GenerateGeometry3DIndexed | ( | ) | 
Generates indexed 3D verticse for this room return list of faces
| void skr::pcg::Room::GenerateTargets | ( | RNG * | rng | ) | 
Sets _targets for this room with given RNG
| rng | pointer to current random number generator | 
Generates targets for this give with given RNG makes sure that targets don't overlap, even when moving param rng pointer to current random number generator returns list of targets
      
  | 
  inline | 
Point: LowerLeftBottom.
      
  | 
  inline | 
Point: LowerLeftTop.
      
  | 
  inline | 
Point: LowerRightBottom.
      
  | 
  inline | 
Point: LowerRightTop.
| std::string skr::pcg::Room::PrintRoomMeasurements | ( | bool | extensive = false | ) | 
Gets a string of the measurements of this room in a human readable way
| extensive | true to enable more detailed output, default false return string with human readable text | 
Sets color, textures and texture parameters based on type of Room for given face
| face | [out] reference to a face | 
| ft | type of face: wall, ceiling, floor | 
      
  | 
  inline | 
Point: UpperLeftBottom.
      
  | 
  inline | 
Point: UpperLeftTop.
      
  | 
  inline | 
Point: UpperRightBottom.
      
  | 
  inline | 
Point: UpperRightTop.
| std::vector<Room> skr::pcg::Room::_adjecentRooms | 
list of adjecent rooms
| Point3d skr::pcg::Room::_center | 
center of room
| std::vector<DoorDirection> skr::pcg::Room::_doors | 
doors leading to hallways or special rooms
| float skr::pcg::Room::_height | 
height rom room
| float skr::pcg::Room::_length | 
length of room
| RoomType skr::pcg::Room::_roomType | 
type of room
| std::vector<Target> skr::pcg::Room::_targets | 
list of targets in room
| float skr::pcg::Room::_width | 
width of room
 1.8.18