User Tools

Site Tools


character:hitbox

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
character:hitbox [2014/10/30 19:24]
Justin H.
character:hitbox [2022/07/27 03:39] (current)
Mistermind
Line 1: Line 1:
 ====== Hit Box Setup ====== ====== Hit Box Setup ======
-One of the key ingredients of any fighting game are hit boxes. Different than other action games, 2.5D fighting games rely on precision hits in a more "mechanical" way, as it emulates the sensation of playing a 2D game with the precision (and impact) of well adjusted invisible hitboxes.+One of the key ingredients of any fighting game are hitboxes. Different than other action games, 2.5D fighting games rely on precision hits in a more "mechanical" way, as it emulates the sensation of playing a 2D game with the precision (and impact) of well adjusted invisible hitboxes.
  
 There are many types of hitboxes, around, and thanks to the recent use of 3D technology to emulate 2D game play, hitboxes are commonly known for following body joints. Here are some examples: There are many types of hitboxes, around, and thanks to the recent use of 3D technology to emulate 2D game play, hitboxes are commonly known for following body joints. Here are some examples:
Line 16: Line 16:
 {{ :character:character_hitboxes1.png?nolink |}} {{ :character:character_hitboxes1.png?nolink |}}
  
-----+Make sure you first set your character model(s) under [[character:prefabs|Character Prefabs]] before proceeding to the sections below.
  
-==== Character Prefab ==== 
-**Choose a character prefab:** A prefab containing the following components 
-  * Animation 
-  * (SOURCE VERSION) Hit Boxes Script (''.\UFE\Scripts\HitBoxesScript.cs'') 
-  * (OTHER VERSIONS) Hit Boxes Script (''.\UFE\Plugin\UFE.dll\HitBoxesScript'') 
- 
-or 
- 
-**Create a character prefab:** Create a character prefab from your character model 
-  * Drag your character model from your project folder to the **Hierarchy** 
-  * If it doesn't have the animation component yet, click on **Add Component**, than search for Animation. No further configuration is necessary. 
-  * Using the Project window, navigate to ''.\UFE\Scripts\HitBoxesScript.cs'' ((''.\UFE\Plugin\UFE.dll\HitBoxesScript'' if you are not using the source version.)) and, with the character still selected, drag the script to the Inspector window. No further configuration is necessary. 
-  * Once you're done, drag the character back from Hierarchy to your desired folder in the Project window. Unity will automatically create a prefab. 
- 
-{{ :character:character_hitboxes2.png?nolink |}} 
- 
-Now drag your newly created prefab to the //Character Prefab// in the Hit Box Setup panel. Once you have your character in, you can click on "Open Character" to see the character. Now lets configure the hitboxes. 
  
 ---- ----
- 
 ==== Transform ==== ==== Transform ====
 Works similar to Unity's default Transform component.  Adjust your character's rotation so it looks like its standing on the left side of the screen.\\ Works similar to Unity's default Transform component.  Adjust your character's rotation so it looks like its standing on the left side of the screen.\\
Line 48: Line 30:
  
 ---- ----
- 
 ==== Hit Boxes ==== ==== Hit Boxes ====
-Tag your character's body parts to the hit boxes, set its shape, size, offset, collision type and hitbox type.+Tag your character's body parts to the hit boxes, set its shape, size, collision type and hitbox type.
  
 {{ :character:character_hitboxes3.png?nolink |}} {{ :character:character_hitboxes3.png?nolink |}}
Line 65: Line 46:
     * Hit Collider (green hitboxes): Hit collision only. Opposing green hitboxes can overlap.     * Hit Collider (green hitboxes): Hit collision only. Opposing green hitboxes can overlap.
     * No Collider (white hitboxes): No collision. Use these for body parts that are not considered hitboxes but can be a [[move:activeframes|hurtbox]] if needed.     * No Collider (white hitboxes): No collision. Use these for body parts that are not considered hitboxes but can be a [[move:activeframes|hurtbox]] if needed.
-    * Throw Collider (red hitboxes): Used to detect attacks that have hittype of Throw.  If the character doesn't have a Throw Collider hitbox, then throws will not work against them.+    * Throw Collider (red hitboxes): Used to detect attacks that have hittype of Throw.  If the character doesn't have a Throw Collider hitbox, then throws will not work against them.  See also: [[throwtutorial:throw_tutorial|Throw Creation Guide]]
   * **Hit Box Type:**    * **Hit Box Type:** 
     * High: If a non-knockdown attack hits this hitbox, ''Get Hit High'' animation group is triggered.     * High: If a non-knockdown attack hits this hitbox, ''Get Hit High'' animation group is triggered.
     * Low: If a non-knockdown attack hits this hitbox, ''Get Hit Low'' animation group is triggered.     * Low: If a non-knockdown attack hits this hitbox, ''Get Hit Low'' animation group is triggered.
 +  * **Default Visibility:** Set the default visibility for certain Game Objects under your character hierarchy. This option is useful for hiding or showing certain objects during gameplay (like weapons). This option only works for objects detached from the main [[http://docs.unity3d.com/Manual/class-Mesh.html|Mesh]]. You can then toggle the visibility by using [[move:start|Move Editor -> Body Parts Visibility Toggle]].
  
 **Note:** **Note:**
Line 75: Line 57:
   * After the last step if you can't see the hitbox in scene view, click on Gizmos (top right corner of scene view) and toggle "HitBoxesScript".   * After the last step if you can't see the hitbox in scene view, click on Gizmos (top right corner of scene view) and toggle "HitBoxesScript".
  
 +
 +----
 +==== Related Video Tutorials ====
 +{{youtube>2q6HtL9L_GY?large}}
 +
 +{{youtube>6tJ7rPAvt_w?large}}
 +
 +
 +
 +----
 Code example: Code example:
 <code c#>void OnHit(HitBox strokeHitBox, MoveInfo move, CharacterInfo hitter){ <code c#>void OnHit(HitBox strokeHitBox, MoveInfo move, CharacterInfo hitter){
Line 80: Line 72:
 }</code> }</code>
  
----- 
- 
-Related Video Tutorial:\\ 
-{{youtube>large:6tJ7rPAvt_w}} 
  
 ---- ----
  
 [[character:start|< Back to Character Editor]] [[character:start|< Back to Character Editor]]
character/hitbox.1414711450.txt.gz · Last modified: 2014/10/30 19:24 by Justin H.