nyuuzyou/wikis huggingface dataset:
PAS

PAS or Potentially Audible Set
PAS is a kind of bounding-box for Player or NPC AI sound detection. It is measured as the set visleaves which are audible from the visleaf occupied by the Sensing NPC or Player. Similar to PVS, A PAS-test is only the first filter that a sound must pass in order to be audible to the NPC. An areaportal can be used to toggle whether a visleaf is part of the PAS.
==See also==
*NPC Sensing - The group that PAS falls under.
*AI Perception Behavior Enhancement - An easy code edit that will make an NPC investigate any sound it hears.
*Talk:NPC Sensing - Information about PAS.
Category:Glossary
PBR-2-Source

is a tool written in by koerismo that can be used to port PBR materials to a wide variety of games, even those without PBR shader support. When converting to standard shaders, it uses several algorithms to approximate roughness and metalness with a combination of Phong and $envmap reflections. When converting for use with a PBR shader, it simply combines the provided textures. On export, a VMT file will be created that defines the material for use in-game.
==Supported games==
This is the official list of games supported by PBR-2-Source. If a game is not listed here, it may still work, but the program will not be able to account for any game-specific caveats.
* (Requires testing)
* (Requires testing)
* (Requires testing)
* 
* (Requires testing)
* 
* 
* 
==See also==
* Physically Based Rendering
* Category:PBR
==External links==
* Download
* GitHub Repository
* Koerismo's website Page
Category:Third Party Tools
Category:PBR
PBR (Strata shader)

It uses many different texture maps to create a more accurate simulation of light. uses a modified version of Thexa4's PBR shader, which is capable of rendering lightmaps on brushes. It can be used on both brushes and models.
==Supported Parameters==
===Basics===
===Appearance===
===Flashlight===
===PBR===
===Paint===
===Lighting===
===Reflection===
===Transparency===
==See also==
*Physically Based Rendering
*Adding PBR to your mod
*Adapting PBR Textures to Source
*Creating PBR materials
Category:Strata
Category:PBR
PNG

PNG, short for Portable Network Graphics, is a image format. This means image data is perfectly preserved, but at a generally much smaller filesize than uncompressed BMP or TGA files. PNGs are particularly suited to images with large sections of solid color, like Computer-generated graphics. PNG also supports an alpha channel. This format is actively used in .
==See also==
*Screenshot
Category:File formats
Category:Image formats
Category:Glossary
PPL

PPL files are lightmaps (per-pixel lighting) generated by VRAD for models that have enabled. Unlike brush lightmaps, PPL files are always uncompressed RGB888 (24-bit ), even when the map is compiled in HDR mode. 
A PPL file can be converted to uncompressed VTF(s) using Ficool2's proptexelvtf.exe (direct download), which can then be used for .
== File format ==
The format is super simple, and is as follows:
struct FileHeader_t
{
 int version;
 unsigned int checksum;
 unsigned int imageFormat;
 int meshCount;
 unsigned int unused[4];
 // Immediately after, "meshCount" number of MeshHeader_t headers
};
struct MeshHeader_t
{
 unsigned int lod;
 unsigned int offset; // Offset from the top of the file to the raw image data in given image format (usually RGB888)
 unsigned int length; // Length of the image data, including all mip maps
 unsigned int width;
 unsigned int height;
 unsigned int unused[3];
};
== See also ==
* VHV, the equivalent for vertex-lit props
Category:File formats
Category:Image formats
PRT

A portal (.prt) file is a list of the portals in your .BSP, generated by VBSP and then used by VVIS to perform visibility calculations. It is a simple ASCII file and its format is as follows:
PRT1
<Leaf Count>
<Portal Count>
<Vertex Count> <Leaf A> <Leaf B> (X Y Z) (X Y Z) (X Y Z) (X Y Z)...
<Vertex Count> <Leaf A> <Leaf B> (X Y Z) (X Y Z) (X Y Z) (X Y Z)...
<Vertex Count> <Leaf A> <Leaf B> (X Y Z) (X Y Z) (X Y Z) (X Y Z)...
...
The PRT1 signature is specific to Source, older tools don't generate it. You can view these files in GLView or .
==See also==
*.pts files are generated by VBSP in the event of a map leak, and can be used to identify its approximate location.
Category:Level Design
Category:Plain text formats
Category:Source
PSD

PSD, which stands for "Photoshop Document", is a proprietary file format which can be created using . According to the game files and other assets leaked on Valve servers, Valve used Photoshop to edit or create games textures, for games such as .
In , added support for converting PSD files to VTF directly, without exporting to TGA first.
For more information about this file format, visit the .
Category:Material System
Category:File formats
Category:Image formats
PTS

A points file in a simple text format created by vbsp and utilized by Source to point out leaks. It stores a series of lines that can be followed to find the location of a leak.
Created during the vbsp process only if a leak is present, it begins at an entity close to the leak and the follows the raytracing steps it took to find its way into void. Often not straight and with a meandering path, it may take some precise following to find the area where the leak is present, it is more a line threaded through the leak rather than a line that points directly to it.
If multiple leaks are present only one will be found and documented, it may take multiple compilation attempts and the corresponding .pts files to find all leaks in a map. Hammer can automatically load the the .pts file for the map and the compile. A map's or compile's .pts file is useless to any other map or compile.
Category:Level Design
Category:Plain text formats
Category:Source
PUNT

is a first person puzzle platformer running on the Source Engine. Set in a retro-futuristic alternate history, the future is today! Using the E.M.M.A., navigate the puzzles of Harmonics and overcome obstacles of increasing complexity.
==Media==
PUNT - Screenshot 1.jpg
PUNT - Screenshot 2.jpg
PUNT - Screenshot 3.jpg
PUNT - Screenshot 4.jpg
PUNT - Screenshot 5.jpg
PUNT - Screenshot 6.jpg
Category:Portal 2 engine branch games
Package: Counter-Strike Complete

As of 2018, (now ) is no longer available on this pack as the game went free to play. Customers who previously purchased this pack will earn Prime Status Upgrade for both and (and gain access to CS:GO Authoring Tools) for free. After this date, purchasing this pack most likely no longer gives you access to CS:GO/CS2 Prime Status and it's Authoring Tools for free.
Category:Packages
Category:Valve packages
Packbsp

is an open-source developer tool that automatically analyzes a map and discovers its network of dependencies, such as artistic assets, and packs them into the BSP file. 
For example, your map may have a custom model in it. PackBSP will analyze the model to find all the files and materials it uses, and then analyze those to find gibs or textures, etc. until everything has been explored. It will compare these files against what exists in GCF/NCF files so that only the custom content you really need is included in the map, and can show you when needed content is missing.
== Features==
* Detects engines and games the same way the Source SDK launcher does.
* Autodetects the relevant GCFs for a game and examines their contents.
* Uses the same data Hammer does (FGDs) to intelligently detect uses of textures, models, etc. in your map.
* Packs custom skybox textures and detail sprites.
* Examines VMT files and understands a wide variety of dependencies, such as bumpmaps, env-maps, patch shaders, etc.
* Handles map-specific particle manifests.
* Handles custom soundscapes.
== Eventual plans ==
* Support for Left 4 Dead series, Alien Swarm
* Support for Macs
== External links ==
* Author's website
* GitHub project page
== Issues ==
If the .bsp map has .mp3 sound files "Packbsp" will list it as "sound-name.mp3.wav"
"Packbsp" does not understand if the .bsp has a sprite with ".spr" E.G. materials/sprites/sprite-name.spr
The "Remove Selected" button is bugged and will not always remove the item that is highlighted.
== See also ==
* Pakrat
* Map Analyst
Category:Third Party Tools
Category:Level Design
Paint.NET

__NOTOC__
 is a free raster graphics editor. Developed by dotPDN, LLC for only.
Download it for free at getpaint.net or purchase it from the .
== Usage with Source ==
=== VTF support ===
Download the Paint.NET VTF Plug-In here.
==== Features ====
*VTF versions from 7.0 to 7.5 are supported.
*Normal mapped textures can be automatically generated.
*Support for mipmapping options.
*Templates are provided for compression, skyboxes, and sprays.
*Alpha is exported if the format chosen supports it.
=== RAW color correction support ===
Category:Third Party Tools
Category:Material System
Category:Third Party Source 2 Tools
PaintBlob

Originally intended for Gel blobs, it can also be used to create realistic hollow ice surfaces, by piercing light through it using normal mapping, and calculating light reflection from its inner layer(backface) onto the outer layer (front face). The final output color of the surface is computed by combining various lighting terms. Also supports fresnel translucency when viewing the surface through itself, creating the illusion of a hollow ice material. Furthermore, a bounding box min and max value can be set to define how "hollow" or "thick" the material surface should be.
== Ice Interior Shading Algorithm ==
The code implements an ice interior shading algorithm to simulate the appearance of ice as a translucent material. The algorithm takes inputs such as the world normal, eye direction, and screen position and uses them to create the illusion of light passing through the surface. The final result is a composite of the blurred enviroment map, the interior color and ambient lighting.
== Supported Parameters ==
===Textures & Masks===
;
: Diffuse texture.
;
: Normal map.
;
: Specular reflection.
;
: 1D ramp texture for tinting scalar diffuse term.
; 
: Specify that this is the back surface of the ice.
; 
: Mask texture for specular reflection.
; 
: 1D ramp texture for controlling fresnel falloff
; 
: Typically, a grayscale texture that defines the opaque and translucent parts of the texture. 
== Outer Layer Parameters ==
; 
: Scales the output color. 
; 
: Specular exponent values.
; 
: Specular boost values.
; 
: Rim light exponent.
; 
: Rim light boost.
; 
: Base texture tint. 
== Interior Volume Parameters ==
; 
: Enable interior layer.
; 
: Fog strength (scales with thickness of the interior volume).
; 
: Boosts the brightness of bright background pixels.
; 
: Scales the ambient light in the interior volume.
; 
: Scales backlighting in the interior volume.
; 
: Strength of bumped refract of the background seen through the interior.
== Additional Parameters ==
; 
: UV projection scale. Default: 0.02.
; 
: Bump map strength.
; 
: Bump map strength for the fresnel term.
; 
: Fresnel range parameters for the opacity texture.
; 
: Center for UV projection.
; 
: 
; 
: Darkens the shading of the ice region in areas where it is in contact with a surface.
;
: Bump frame.
;
;
;
;
Category:Shaders
Paint sphere

==Entity description==
It paints brush entities inside the sphere.
==Keyvalues==
:* 0 : Bounce
:* 1 : Sticky (Broken when the game came out, changed into mirroring gel when the first DLC came out. Blobs are missing a texture.)
:* 2 : Speed
:* 3 : Portal
:* 4 : Erase
==Inputs==
==Outputs==
PakScape

is a multi-purpose software GUI tool utilized for viewing, editing, and creating archives pertinent to the Quake series of games, including all games, which it's engine were originally based off the engine (also known as Quake/Quake II engine). PakScape can create and edit both PAK and PK3 archive. Additionally, PakScape comes equipped with an in-built sound player that enables users to listen to WAV files typically found in-game archives.
== Features ==
* PakScape is its in-built sound player, which can be used to listen to WAV files that are commonly found in-game archives. With PakScape, users can explore and create both PAK and PK3 files, thus doubling as an explorer/creator for ZIP files as well since PK3 files are just ZIP files in disguise.
* With PakScape, users can perform a range of tasks such as creating, editing, opening, and saving PK3/PAK files, thus enabling a seamless experience when dealing with game archives.
== Screenshots ==
Image:1quake.png|GUI
Image:2quake.jpg|GUI
== Credits == 
Peter ‘Riv’ Engström. 
== External links == 
* Download at the Valve Developer Union
* Download on GameBanana
* Download on ModDB
* 
* Quake 1 tools on QuakeWiki.net
Category:Third Party Tools
Category:Third Party GoldSrc Tools
Category:Non-Steam Applications
Pakrat

is a GUI replacement for Valve's BSPZIP application. 
Pakrat has the ability to scan a .BSP file for all texture, material, and model files used in the map and automatically embed custom content into the .BSP file.
Use at your own risk.
==Usage==
Pakrat is useful for packing textures and custom assets etc. into your BSP before uploading to Steam Workshop, as with p2map_publish. This short how-to assumes you're working in for example, and you've placed your custom assets in subfolders of SteamApps/common/Portal 2/portal2/ -- in theory, this process would be the same for or whatever, just use the main path to instead.
# Download Pakrat and unzip it to somewhere on your computer.
# In Hammer, compile your map as usual. Also build the cubemaps in-game if you have to. Once we pack our files with Pakrat, we won't want to mess with the BSP file again, since Pakrat will often corrupt the map file if you try to re-pack the same files again.
# In Pakrat, load your BSP.
# In Pakrat, File >> Preferences, and configure the "game root" directory by browsing to your \portal2\ folder... so the full path should look something like "...Steam/SteamApps/common/Portal 2/portal2/"
# In Pakrat, now click "Auto" and add the files it detects. If you want to see what it's really doing, click "Scan" instead -- it is looking in the "game root" directory for file paths it detected in your BSP. It will fail to find any files that already come with the game (e.g. packed in VPKs) which is good, because you only want to distribute your custom content.
# In Pakrat, make sure you save and overwrite the BSP with the same filename, or else it will break your cubemaps.
==See also==
* Packbsp
* Map Analyst
==External links==
* Pakrat homepage
* Download (@ TopHATTwaffle's web site)
Category:Level Design
Paleo

Paleo Entertainment was founded in 2006 by Troy Latimer to create fun paleolithic style video games online. It was originally a mod team that created the Paleolitic Revolution Mod. In 2007 it moved to La Jolla, Ca in it's present space. It has added Project Paleo as a code name for a Massive Multiplayer Online and First Person Shooter genres.
== External links ==
* Paleo Entertainment official site
Category:Developer Corporations
Paleolitic Revolution

== Overview == 
This mod is multiplayer based on Neanderthals and Cro-Magnon mans domination of caves and stacked rocks. Players can modify the map environment by moving and stacking rocks. For example, a big pile of rocks can be used for weapons, to make shelter or build walls for defense. Players will decide to leave the modifications or destroy them. The assets in the game never disappear and once they are all used the game is ready to end.
The main goal is for the players to build and defend territories. This will be done by joining clans that work together by building villages or securing cave networks and defending them from opposing forces. The only way to win the game is by becoming the dominant civilization. This is basically capturing the flag but the homes are the capture points.
== Features ==
* Distinct paleolithic setting
* Various mini-games
== Team ==
This mod was developed by Paleo Entertainment.
== External links ==
* Paleolithic Revolution official site
* 
* Paleo Entertainment official site
Category:Multiplayer Mods
Palette

A color palette, or simply palette (also known as a "colormap" or "color index"), is a lookup table of color values. It most frequently used for simple image compression, but can also be used for other purposes. For example, reads from a palette to know what color to render legacy particle effects from .
Uses: 
* Most stuff in and 
* Per-image compression in 
* Particle effects and WON console in 
:
* (palette for each 4x4 block)
* shader in 
* 
== External links ==
* 
Category:Glossary
Panel

Category:ClassesCategory:VGUI
vgui::Panel is the base class of all VGUI elements. It is a rectangle which covers an area of the screen and can draw itself, handle events, and host children.
== Functions ==
=== General ===
; SetVisible(bool)
; bool IsVisible()
; bool IsFullyVisible()
: Invisible panels and their children are not drawn or updated and do not receive input messages. IsFullyVisible() checks parent panels for visibility too.
; SetEnabled(bool)
; IsEnabled()
: Disabled panels do not receive input and are often drawn with muted colours to indicate this.
; OnThink()
: Called every frame before painting if the panel is visible. 
; void OnTick()
: Called at regular intervals if ivgui()->AddTickSignal() is called.
=== Layout ===
; bool IsProportional()
; SetProportional(bool)
: 
; SetPos(), GetPos(), SetSize(), GetSize(), SetBounds(), GetBounds(), GetWide(), SetWide(), GetTall(), SetTall()
: Functions for configuring the panel's position or size, or both at once.
=== Painting ===
A panel is drawn by its "paint" functions. PaintBackground() and Paint() are enabled by default.
; PaintBackground()
; SetPaintBackgroundEnabled(bool)
: Draws the background of the panel.
; Paint()
; SetPaintEnabled(bool)
: Draws the contents of the panel. 
; PaintBorder()
; SetPaintBorderEnabled(bool)
; SetBorder(IBorder *border)
; IBorder *GetBorder()
: Paints a border around the panel. SetBorder() must be called before SetPaintBorderEnabled().
:* Get an IBorder from IScheme::GetBorder() in ApplySchemeSettings().
:* See swarm/resource/sourcescheme.res for examples of border definitions.
; PostChildPaint()
; SetPostChildPaintEnabled(bool)
: Performs arbitrary drawing after the panel's children have been painted (i.e. above them).
; SetSkipChildDuringPainting(Panel *child)
: Prevents a child from drawing, .
; SetAlpha(int)
: Sets the alpha of this panel and its children panels. 0 is invisible, 255 is opaque.
=== Hierarchy ===
Each panel has one parent and can have many children. Unless made a popup, children are drawn relative to and within the confines of their parent panel.
==== Parents ====
; Panel *GetParent()
; VPANEL GetVParent()
; SetParent(Panel*) or SetParent(VPANEL)
: Gets/sets this panel's parent.
; bool HasParent(VPANEL)
: Is the given panel somewhere above this one in the hierarchy?
==== Children ====
; int GetChildCount()
; Panel *GetChild(int index)
; Panel *FindChildByName(char* childName, bool recurseDown = false)
: Provides access to child panels.
; OnChildAdded(VPANEL child)
: Called when a child is added to this panel.
==== Popups ====
; PopupMakePopup(bool showTaskbarIcon = true,bool disabled = false)
; bool IsPopup()
: Popup panels draw outside of their parent's space and do not follow it around.
== Script Parameters ==
These can be used within a .res layout file.
PanelList SubPanel

==CPP==
/////////// Copyright © 2007, Mark Chandler. All rights reserved. ///////////
//
// Description:
//	This is the core of the subpanel
//
//	Mark Chandler 2007 admin@lodle.net
//
////////////////////////////////////////////////////////////////////////////////
#include "cbase.h"
#include "pd_mappanel.h"
#define ROUND(arg) floor(arg+0.5)
#define MARG 5
SubPanel::SubPanel(Panel *parent, const char *name) : PD_BasePanel(parent, name)
{
	m_pNameLab = new vgui::Label(this, "NameLabel", "Sub Name");
	m_pTextLab= new vgui::Label(this, "TextLabel", "Sub Text");
	m_pNameLab->SetMouseInputEnabled(false);
	m_pTextLab->SetMouseInputEnabled(false);
	m_bNeedsUpdate = true;
	Q_strncpy(m_szName,"Sub NAME", 256);
	Q_strncpy(m_szText,"Sub Text", 256);
	m_iLevel = 0;
	OnSizeChanged(GetWide(), GetTall());
}
void SubPanel::OnThink( void )
{
	if (m_bNeedsUpdate)
	{
		m_pNameLab->SetText(m_szName);
		m_pTextLab->SetText(m_szSubName);
		m_pNameLab->SetFgColor(Color(0,0,0,255));
		m_pTextLab->SetFgColor(Color(0,0,0,255));
	}
}
void SubPanel::OnSizeChanged(int newWide, int newTall)
{
	int w = newWide - MARG;
	int h = (newTall - MARG*4 - 2 - 2)/3;
	int y1 = MARG+MARG;
	int y2 = y1 + 2 + h;
	m_pNameLab->SetBounds(newTall+MARG, y1, w, h);
	m_pTextLab->SetBounds(newTall+MARG, y2, w, h);
}
==Header==
/////////// Copyright © 2007, Mark Chandler. All rights reserved. ///////////
//
// Description:
//	This is the sub panel for the panel list
//
//	Mark Chandler 2007 admin@lodle.net
//
////////////////////////////////////////////////////////////////////////////////
#ifndef SUBPanel_H
#define SUBPanel_H
#ifdef _WIN32
#pragma once
#endif
#include <vgui_controls/panel.h>
#include <vgui_controls/Label.h>
#include "pd_panel_list.h"
using namespace vgui;
class SubPanel : public PD_BasePanel
{
	DECLARE_CLASS_SIMPLE( PD_MapPanel, PD_BasePanel );
	PD_MapPanel(Panel *parent, const char *name);
	void SetTitle( char* name){Q_strncpy(m_szName,name,256);m_bNeedsUpdate=true;}
	void SetText( char* text){Q_strncpy(m_szText,text,256);m_bNeedsUpdate=true;}
	void OnThink( void );
	void OnSizeChanged(int newWide, int newTall);
private:
	vgui::Label *m_pNameLab;
	vgui::Label *m_pTextLab;
	bool m_bNeedsUpdate;
	char m_szName[256];
	char m_szText[256];
};
#endif
Category:Programming
Panorama

Not to be confused with panoramic images.
Panorama is a Valve-developed UI framework. It is heavily influenced by and closely resembles modern web authoring (HTML5/CSS/JS). It enables rapid development, high quality, and high performance interfaces as well as seamless integration with game content (3D models, particles, etc.)
==Games==
Panorama is available in all games after , and is in all games.
==Panorama Overview==
See Dota 2 Workshop Tools/Panorama for a comprehensive guide.
A Panorama UI is made up out of elements called Panels. These Panels form the building blocks of the UI (labels, images, buttons, etc). The way the Panels are laid out on the UI is described in .XML layout files, and their appearance is described in .CSS style sheets.
To communicate with the game Panorama uses the JavaScript scripting language. Scripts also enable creation of more complex UI effects and behavior than is possible with CSS style sheets alone. Scripts can either be separate .JS files or added inline in the .XML layout files. A separate Event system also allows communication between the panels within the same UI. 
===File Types===
.XML Layout Files - Used to set up the Panel layout and events.
.CSS Style Sheets - Used to set up panel appearance.
.JS JavaScript Code - Used for communication with the game and advanced UI behaviors.
.TXT Localization Files - Provides support for translating UI text.
.JPEG, .PNG Images 
==Articles==
;
: Main Article
: Panels
: CSS Properties
: Panorama Debugger
: Panorama Layout
: JavaScript
: JavaScript API
: Events
: GameUI SetMouseCallback Example
: Valve Provided UI
: Localization
: Custom UI Manifest
: Custom Nettables
;
: Adding a Welcome Panel
: JavaScript API
: Linking Lua with JavaScript
;
: CSS Properties
: Events
: JavaScript API
Category:Panorama
ParallaxTest

ParallaxTest is an unfinished shader since (although not available in SDK 2013) which draws parallax mapping on an albedo. 
Alternative to the disabled $parallaxmap shader parameter.
Accepts only a $basetexture, of which the alpha channel is used as the heightmap.
The texture scale in hammer seems to correspond to the depth of the parallax effect. Higher scale -> deeper parallax.
Models with this material will rendered invisible.
Category:Shaders