Back to docs

Retro FPS Studio - Technical Concepts

This document lists a few of the common concepts you will encounter when using RFS.

What is a map?

A map is one playable area that is loaded up in one go for the player to walk around in. It is filled with room layers made up by polygonal rooms that hold your enemies, items, and spaces to walk around in.

What is a room?

Since RFS2 Engine is a polygonal raycaster, the maps in RFS consist of polygonal shapes, so-called rooms.

Each room can be connected to other rooms such that you can walk from one into the other, and each room must be shaped as a polygon (doesn't need to be convex). The rooms make up the space the player can later walk in, anything outside of these rooms is unreachable. For outdoor spaces, use rooms with a sky texture as a ceiling.

What is a room layer?

A room layer is a two-dimensional layer, like a paper sheet, where you can place your rooms. On one layer, rooms cannot overlap - they can connect to each other, but you can't have one room above another. To solve this limitation, you can have multiple room layers per map connected via portals, which allows you to model multiple stories in one single map.

What is a portal?

A portal is a connection between two neighboring rooms, either on the same room layer, or even different layers. Ingame, the player can walk and look through these transparently. Since RFS2 engine is a portal renderer, it is made to deal with these portals in a seamless fashion. Please note a portal cannot actually transport the player in position, it is just a technical term for room connections.

Any room wall, so any single side of the room's polygon shape, can have exactly one such portal. This means openings above each other into different target rooms are impossible.

What is a movable?

A movable is any type of movable object in the RFS2 engine, usually represented by a sprite. Movables represent enemies, items to be picked up, etc. Movables cannot be made of true 3d geometry: blocks or the underlying rooms can't move, with the exception of vertical elevators and sliding doors.

What is a door?

Doors in RFS2 engine are a special optional feature of portals, where an additional movable cover representing a door can be placed right over the portal. Ingame it can move sideways dynamically, to open and allow being walked through.

What is a block?

Any block in RFS2 engine is an additive static 3D polygonal block inside a room. To understand the difference to a room, a room is the opposite: a substractive cut-out of the void to have a space to fill to start with, which can then contain sprites and additive blocks for furniture, pillars, and such. Compared to sprites (in form of movables), furniture often looks better represented with blocks. Blocks cannot ever move in your game.

Note on block performance and limits:

While blocks in theory can be used like "3d floors" in other engines, they are restricted in size, as well as amount in any local area. So they're not suited for large structures like bridges, and really meant for furniture. The reason for these limits are that blocks cause overdraw, slowing RFS2 engine more than regular room geometry.

Copyright © 2021, E.J.T. - admin contact...