This will tell your panel top what panel arm to attach to and where to put it. Shortcut: If you want to save some time when parenting the func_brushes (panel tops) to the prop_dynamics (panel arms), you can type ,panel_attach or ,panel_top into the Parent keyvalue of your func_brush (yes, that is a comma, and there are no spaces - it's whitespace-sentitive). Now all you have to do is hook them up to a button or similar by setting the button's outputs to trigger the enable and disable relays.
Just beware that too many moving panels (more than 20-30) is likely to cause lag on some systems. Use separate names if you don't want all your panels to act as one (they need only differ by a number). Once you've got something that works, it's time to rinse and repeat as needed for your map.
The slight delay (0.10 - 2.00 seconds) is needed to ensure that it takes effect.ĥ) Create two logic_relays: one to enable your panel (deploy it) and one to disable it (retract it) and set these I/O: Set its parent to the name of your prop_dynamic (so that it will move with the panel arm).Ĥ) Create a logic_auto and set its output as in the image below. Texture the bottom, top and sides accordingly.ģ) Place the brush directly on top of the panel arm's top, turn it into a func_brush and name it. → TIP: The large 128×128 models can be found under anim_wp\telescope_arm_128\.Ģ) Create a 64×64 brush, 2 units thick (small panel), or a 128×128×4 (or 128×128×8) brush (large panel). The panel arm models come with their own sounds for each animation, which you can use the model viewer to preview (it's not the one in Hammer, but elsewhere in the Portal 2 Authoring Tools), so that in many cases you won't need to use an ambient_generic (or several) for sounds.ġ) Create a prop_dynamic, give it a name and set its model to anim_wp\room_transform\arm64圆4_interior.mdl Typically, there are going to be four basic versions of an animation: an "in" animation, an "out" one, and idle (ending) animations for both of these. Before you begin, I seriously recommend studying the panel animations and think about where and how they were used in the game. All you need is a prop_dynamic with the panel arm model and a func_brush for the panel top, as well as a few logic entities (more specifically logic_auto and logic_relay, the latter of which isn't strictly necessary, but really helps with organizing your I/O). Surprisingly, it doesn't take much to set one up either. They can be used to raise things, lower things, and create angled surfaces (including those classic stairs) without the need for wedges. Panels are a huge part of Portal 2, even more so than in the original game.