Giant Fan (Portal 2)
You can help by
January 2024
The Giant Fan is a Behind the Scenes decoration used in the co-op campaign. The fan is meant to be purely decorative and is used to "push a lot of air".
Portal: Revolution turns it into a gameplay element.
Creating a Giant Fan
1. Select the brush tool, and in the object bar, change block to arch with the drop down menu. Then in the properties
2. Next draw a 1056 x 1056 cylinder, make it at least 220 units thick.
3. Push it into the wall that you want to put a fan in, the top should be slightly protruding with the wall. Right click and press carve.
Warning:The carve tool creates unstable and "messy" geometry when used with complex objects.
Workaround:Use the arch primitve instead, remember to tie it to a func_detail.
4. Place down three props; Three static, one dynamic. The dynamic prop will be the fan itself, in the "World model" property, set the model to "models/props_bts/huge_fan.mdl". The other two parts will be the fan rims, and its supports. Position these in a way that you see fit. Make sure to set "Disable shadows" ("Disable Producing Cheap Shadows" in
TeamSpen's Hammer Addons) to "Yes".
5. In order for the fan to spin, create a small brush near the fan with the tools/toolsodraw texture. Select the brush and press Ctrl+T to tie the brush to an entity. Make it a func_rotating, in the flags tab, check "Start ON" (if the fan must start enabled), "Fan Pain" and the axis box that corresponds to your fan direction ( "X Axis" -> horizontal and "Y Axis" -> vertical ). Set the maximum rotation speed to 400 and the friction to 1. At last, name this entity in a way preferably indicating it is used to make other entities rotate (for instance : "fan_rotator").
Note:You can add a trigger_hurtspanning across the entire fan to stop players from passing through the fan.
6. In order for the blades to spin, they have to be parented to the func_rotating. Specify the name of the fan's rotator in the prop_dynamic's parent field.
Warning:func_rotatingwill not rotate forever. You can use the Vscript snippet given in its dedicated page to circumvent this bug.
7. The last step is to add a sound. In the func_rotating's properties, add World.LargeFanLoop to the "Sound when moving" field ("Rotating sound WAV" in
TeamSpen's Hammer Addons).
