Weapon cubemap: Difference between revisions
No edit summary  | 
				m (Classifying as model entity)  | 
				||
| (30 intermediate revisions by 10 users not shown) | |||
| Line 1: | Line 1: | ||
{{  | {{LanguageBar}}  | ||
It is   | {{Ent not in fgd}}  | ||
[[File:weapon_cubemap_Demonstration.png|thumb|300px|right|weapon_cubemap in {{hl2|4}}.]]  | |||
{{CD|CWeaponCubemap|base=CBaseCombatWeapon|file1=1}}  | |||
{{This is a|model entity|name=weapon_cubemap|engine=Source|game=Half-Life 2 series|game1=Portal series|game2=Portal 2: Community Edition}}   | |||
This entity gives the player a set of spheres {{file|preset=2|models/shadertest/envballs|mdl}}, each with different reflective surfaces. It is used for checking [[cubemaps]].  | |||
The commands to get it (typed into the console) are either {{cmd|impulse|81}} or {{cmd|give|weapon_cubemap}}.  | |||
These commands are considered cheats, meaning that {{cmd|sv_cheats}} must be enabled for them to work.<br>  | |||
You can switch to this weapon (after having received it) by typing {{code|preset=1|use weapon_cubemap}}.  | |||
{{tip|To equip and draw the weapon for quick work, developers can bind this command to a specific key. For instance, typing {{cmd|bind|"X" "impulse 81"; "use weapon_cubemap"}} will bind it to the X key. (You may need to press it twice the first time you use it in a map.)}}  | |||
{{tip|Changing weapon_cubemap's viewmodel to an invisible model (such as blackout.mdl) can be an easy method of hiding the players HUD and weapon at the same time without needing {{ent|player_speedmod}}.}}  | |||
{{note|{{p2}} does have it in a working condition but needs the model from another game}}  | |||
== Workarounds ==  | |||
If your game does not have <code>weapon_cubemap</code>, rifle scopes could be used, such as the [[weapon hunting rifle spawn|hunting rifle]] in {{l4d2|4}}, the [[weapon awp|AWP]] in {{csgo|4|nt=1}} or the [[weapon_crossbow|crossbow]] in {{bms|4}}, as alternatives.  | |||
Community mods have been made to implement it into games that do not support it natively:  | |||
* {{tf2|2}}: Create a [[VScript]] file named {{file|weapon_cubemap|nut}} inside {{path|tf/scripts/vscripts/}}, paste in the following code and then type <code>script_execute weapon_cubemap</code> and switch to melee.  | |||
::<source lang=js>  | |||
local player = GetListenServerHost()  | |||
local cubemap = "models/shadertest/envballs.mdl"  | |||
PrecacheModel(cubemap)  | |||
for (local i = 0; i < 8; i++)  | |||
{  | |||
    local weapon = NetProps.GetPropEntityArray(player, "m_hMyWeapons", i)  | |||
    if (weapon && weapon.GetSlot() == 2)  | |||
		weapon.SetCustomViewModel(cubemap)  | |||
}  | |||
</source>  | |||
* {{csgo}} [https://www.youtube.com/watch?v=TsGp9t9kYk4 Counter-Strike: Global Offensive]: Tutorial by TopHattWaffle and Zool Smith  | * {{csgo}} [https://www.youtube.com/watch?v=TsGp9t9kYk4 Counter-Strike: Global Offensive]: Tutorial by TopHattWaffle and Zool Smith  | ||
* {{l4d2}} [https://steamcommunity.com/sharedfiles/filedetails/?id=1832861982 Left 4 Dead 2]: Tutorial by MrFunreal  | * {{l4d2}} [https://steamcommunity.com/sharedfiles/filedetails/?id=1832861982 Left 4 Dead 2]: Tutorial by MrFunreal  | ||
* {{  | * {{bms}} [https://steamcommunity.com/sharedfiles/filedetails/?id=3342667300 Weapon_Cubemap (Dev Tool)]: A simple replacement for the [[weapon_assassin_glock|assassin glock]] by Jofoyo  | ||
== FGD Code ==  | |||
<pre>  | |||
@PointClass base(Weapon,Targetname, Parentname) studio("models/shadertest/envballs.mdl") = weapon_cubemap : "Cubemap preview spheres"[]  | |||
</pre>  | |||
[[Category:Cubemaps]]  | |||
[[Category:Level Design]]  | |||
[[Category:Weapons]]  | |||
Latest revision as of 03:36, 19 May 2025
| CWeaponCubemap | 
weapon_cubemap  is a   model entity  available in 
 Half-Life 2 series, 
 Portal series, and 
 Portal 2: Community Edition. 
This entity gives the player a set of spheres ![]()
models/shadertest/envballs.mdl, each with different reflective surfaces. It is used for checking cubemaps.
The commands to get it (typed into the console) are either impulse 81 or give weapon_cubemap.
These commands are considered cheats, meaning that sv_cheats must be enabled for them to work.
You can switch to this weapon (after having received it) by typing use weapon_cubemap.
bind "X" "impulse 81"; "use weapon_cubemap" will bind it to the X key. (You may need to press it twice the first time you use it in a map.)Workarounds
If your game does not have weapon_cubemap, rifle scopes could be used, such as the hunting rifle in 
 Left 4 Dead 2, the AWP in 
 CS:GO or the crossbow in 
 Black Mesa, as alternatives.
Community mods have been made to implement it into games that do not support it natively:
 Team Fortress 2: Create a VScript file named 
weapon_cubemap.nutinside
tf/scripts/vscripts/, paste in the following code and then typescript_execute weapon_cubemapand switch to melee.
local player = GetListenServerHost() local cubemap = "models/shadertest/envballs.mdl" PrecacheModel(cubemap) for (local i = 0; i < 8; i++) { local weapon = NetProps.GetPropEntityArray(player, "m_hMyWeapons", i) if (weapon && weapon.GetSlot() == 2) weapon.SetCustomViewModel(cubemap) }
 Counter-Strike: Global Offensive: Tutorial by TopHattWaffle and Zool Smith
 Left 4 Dead 2: Tutorial by MrFunreal
 Weapon_Cubemap (Dev Tool): A simple replacement for the assassin glock by Jofoyo
FGD Code
@PointClass base(Weapon,Targetname, Parentname) studio("models/shadertest/envballs.mdl") = weapon_cubemap : "Cubemap preview spheres"[]