ΠΏΠΎΠ²ΠΎΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° unity ΡΠ΅ΡΠ΅Π· ΡΠΊΡΠΈΠΏΡ
Rotation and Orientation in Unity
Summary
Rotations in 3D applications are usually represented in one of two ways, Quaternions or Euler angles. Each has its own uses and drawbacks. Unity uses Quaternions internally, but shows values of the equivalent Euler angles in the inspector to make it easy for you to edit.
The Difference Between Euler Angles and Quaternions
Euler Angles
Euler angles have a simpler representation, that being three angle values for X, Y and Z that are applied sequentially. To apply a Euler rotation to a particular object, each rotation value is applied in turn, as a rotation around its corresponding axis.
Quaternions
Quaternions can be used to represent the orientation or rotation of an object. This representation internally consists of four numbers (referenced in Unity as x, y, z & w) however these numbers donβt represent angles or axes and you never normally need to access them directly. Unless you are particularly interested in delving into the mathematics of Quaternions, you only really need to know that a Quaternion represents a rotation in 3D space and you will never normally need to know or modify the x, y & z properties.
In Unity all Game Object rotations are stored internally as Quaternions, because the benefits outweigh the limitations.
In the Transform Inspector however, we display the rotation using Euler angles, because this is more easily understood and edited. New values entered into the inspector for the rotation of a Game Object are converted βunder the hoodβ into a new Quaternion rotation value for the object.
The rotation of a Game Object is displayed and edited as Euler angles in the inspector, but is stored internally as a Quaternion
As a side-effect, it is possible in the inspector to enter a value of, say, X: 0, Y: 365, Z: 0 for a Game Objectβs rotation. This is a value that is not possible to represent as a quaternion, so when you hit Play youβll see that the objectβs rotation values change to X: 0, Y: 5, Z: 0 (or thereabouts). This is because the rotation was converted to a Quaternion which does not have the concept of βA full 360-degree rotation plus 5 degreesβ, and instead has simply been set to be oriented in the same way as the result of the rotation.
Implications for Scripting
Creating and Manipulating Quaternions Directly
Unityβs Quaternion class has a number of functions which allow you to create and manipulate rotations without needing to use Euler angles at all. For example:
However sometimes itβs desirable to use Euler angles in your scripts. In this case itβs important to note that you must keep your angles in variables, and only use them to apply them as Euler angles to your rotation. While itβs possible to retrieve Euler angles from a quaternion, if you retrieve, modify and re-apply, problems will arise.
Here are some examples of mistakes commonly made using a hypothetical example of trying to rotate an object around the X axis at 10 degrees per second. This is what you should avoid:
And here is an example of using Euler angles in script correctly:
Implications for Animation
Many 3D authoring packages, and indeed Unityβs own internal animation window, allow you to use Euler angles to specify rotations during an animation.
These rotations values can frequently exceed range expressable by quaternions. For example, if an object should rotate 720 degrees in-place, this could be represented by Euler angles X: 0, Y: 720, Z:0. But this is simply not representable by a Quaternion value.
Unityβs Animation Window
External Animation Sources
When importing animation from external sources, these files usually contain rotational keyframe animation in Euler format. Unityβs default behaviour is to resample these animations and generate a new Quaternion keyframe for every frame in the animation, in an attempt to avoid any situations where the rotation between keyframes may exceed the Quaternionβs valid range.
For example, imagine two keyframes, 6 frames apart, with values for X as 0 on the first keyframe and 270 on the second keyframe. Without resampling, a quaternion interpolation between these two keyframes would rotate 90 degrees in the opposite direction, because that is the shortest way to get from the first orientation to the second orientation. However by resampling and adding a keyframe on every frame, there are now only 45 degrees between keyframes so the rotation will work correctly.
Π ΡΡΡΠΊΠΈΠ΅ ΠΠ»ΠΎΠ³ΠΈ
[Unity] ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π² Unity 3D
ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π² Unity 3D
1. ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π² Unity 3D
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΡ GameObject, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΏΡΡΠΌΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
Π’ΠΎΠ³Π΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π²ΠΎΠΏΡΠΎΡΡ:
ΠΡΠ²Π΅ΡΡΡΠ΅ ΠΎΠ΄ΠΈΠ½ Π·Π° Π΄ΡΡΠ³ΠΈΠΌ Π½ΠΈΠΆΠ΅.
ΠΠΎ-Π²ΡΠΎΡΡΡ , ΠΎΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ
ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΡΠ²Π΅ΡΠΈΡΡ Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ Π²ΠΎΠΏΡΠΎΡ, ΠΊΠ°ΠΊΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΎΡΠΈ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ? Π Π°Π·Π΄Π΅Π»Π΅Π½Ρ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΠΈ ΡΠΈΡΡΠ°ΡΠΈΠΈ.
1. ΠΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ: Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ Transform Π² ΠΠ½ΡΠΏΠ΅ΠΊΡΠΎΡΠ΅.
ΠΠ»Ρ ΡΡΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π΅ΡΡΡ ΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΠ΅ Π² Unity Doc,
The position, rotation and scale values of a Transform are measured relative to the Transformβs parent. If the Transform has no parent, the properties are measured in world space.
Π’ΠΎ Π΅ΡΡΡ ΠΎΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Transform Π² ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΡΠ·Π»Π°.ΠΡΠ»ΠΈ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΡΠ·Π΅Π» ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ, ΠΎΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΠΌΠΈΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°.
ΠΠ° ΡΠΈΡΡΠ½ΠΊΠ΅ Π²ΡΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Ρ Transform Π΅ΡΡΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΡΠ·Π΅Π», ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Β«MeshΒ» Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅, Position Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ·ΠΈΡΠΈΠ΅ΠΉ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΅Π³ΠΎ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΡΠ·Π»Π° (Π·Π΄Π΅ΡΡ Β«CowΒ»); Π΅ΡΠ»ΠΈ Π½Π΅Ρ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΡΠ·Π»Π°, Position Π±ΡΠ΄Π΅Ρ Π² ΠΌΠΈΡΠΎΠ²ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅. Π Π»ΠΎΠΊΠ°ΡΠΈΠΈ. Π’ΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ ΠΏΠΎΠ²ΠΎΡΠΎΡ ΠΈ ΠΌΠ°ΡΡΡΠ°Π± Π² ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ.
2. ΠΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ: ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠ½ΠΊΡΠΈΡ Rotate Π² Script, Π²ΡΠ°ΡΠ°ΠΉΡΠ΅ Π² Space.Self
ΠΡΡΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΈΡΡ ΡΡΠΈ ΡΠΈΠΏΠ° ΠΏΠ΅ΡΠ΅Π³ΡΡΠΆΠ΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ, Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΌΡ Π±Π΅ΡΠ΅ΠΌ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΏΠ΅ΡΠ²ΡΠΉ. ΠΡΠΎΡΠΎΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΈΠΌΠ΅Π΅Ρ Π΄Π²Π° Π·Π½Π°ΡΠ΅Π½ΠΈΡ: Space.Self ΠΈΠ»ΠΈ Space.World.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΡΡΠ΅ΠΊΡ Π²ΡΡΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΠ΅Π»Π°Π΅ΠΌ Π²ΡΠ²ΠΎΠ΄: Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ Π² Space.Self, ΠΎΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ½ΠΎΠΉ ΠΎΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ.
3. ΠΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ: ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠ½ΠΊΡΠΈΡ Rotate Π² Script Π΄Π»Ρ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ Π² Space.World
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Rotate Space Π² World Π² Inspector, ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅ Π½ΠΈΠΆΠ΅. ΠΠ΄Π΅ΡΡ ΠΌΡ Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ ΠΎΡΡ Y ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΡΠ·Π»Π° ΠΊΡΠ±ΠΎΠΈΠ΄Π° Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΡΡ Y ΠΌΠΈΡΠ°, ΠΈ ΠΊΡΠ±ΠΎΠΈΠ΄ Π·Π΄Π΅ΡΡ Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ Y Π² ΠΌΠΈΡΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ.
Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π΄Π΅Π»Π°Π΅ΡΡΡ Π²ΡΠ²ΠΎΠ΄, ΡΡΠΎ ΠΎΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ½ΠΎΠΉ ΠΎΡΡΡ ΠΌΠΈΡΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΠΏΡΠΈ Π²ΡΠ°ΡΠ΅Π½ΠΈΠΈ Π² Space.World.
4. Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ³ΠΎΠ» ΠΠΉΠ»Π΅ΡΠ° ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ³ΠΎΠ» ΠΠΉΠ»Π΅ΡΠ°.
Π£ΠΏΠΎΠΌΡΠ½ΡΡΠ°Ρ Π²ΡΡΠ΅ Π·Π°Π΄Π°ΡΠ° ΠΎΠ± ΠΎΡΠΈ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ ΠΏΠΎΠ½ΡΡΠΈΠ΅ Π² ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ΅. ΠΡΠΎ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ³ΠΎΠ» ΠΠΉΠ»Π΅ΡΠ° ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ³ΠΎΠ» ΠΠΉΠ»Π΅ΡΠ°.
Π’Π°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠ΅Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ³ΠΎΠ» ΠΠΉΠ»Π΅ΡΠ°, Π’ΠΎ Π΅ΡΡΡ Π΅Π³ΠΎ Π²ΡΠ°ΡΠ°ΡΡΠ°ΡΡΡ ΠΎΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΡΡΡΠ΅ΡΠ°.ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ³ΠΎΠ» ΠΠΉΠ»Π΅ΡΠ°, Π‘Π°ΠΌΠΎ ΡΠ²Π΅ΡΠ΄ΠΎΠ΅ ΡΠ΅Π»ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΡΡΡΠ΅ΡΠ°, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΎΡΡΡΠ΅ΡΠ° Π±ΡΠ΄Π΅Ρ Π²ΡΠ°ΡΠ°ΡΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ²Π΅ΡΠ΄ΠΎΠ³ΠΎ ΡΠ΅Π»Π°.
Π’ΡΠΈ, ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ
ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ ΠΊΠΎ Π²ΡΠΎΡΠΎΠΌΡ Π²ΠΎΠΏΡΠΎΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π»ΠΎΠΊΠ°Π»ΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΠΈ ΠΌΠΈΡΠΎΠ²Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ Π² Unity ΡΠ²Π»ΡΡΡΡΡ Π»Π΅Π²ΠΎΡΡΠΎΡΠΎΠ½Π½ΠΈΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ, ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ Π·Π΄Π΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎΠΌ ΠΏΡΠ°Π²ΠΎΠΉ ΡΡΠΊΠΈ.
Π-ΡΠ΅ΡΠ²Π΅ΡΡΡΡ , ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΡΠ΅ΡΠΈΠΉ Π²ΠΎΠΏΡΠΎΡ. ΠΠΎΡΡΠ΄ΠΎΠΊ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ, ΡΠΎ Π΅ΡΡΡ Π½Π°Ρ ΡΠ³ΠΎΠ» ΠΠΉΠ»Π΅ΡΠ° (xAngle, yAngle, zAngle), ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ x, Π²ΡΠ°ΡΠ΅Π½ΠΈΡ Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ y ΠΈ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ z, Π·Π°ΡΠ΅ΠΌ ΠΠ°ΠΊ ΠΎΠ½ Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π²ΠΎΠΊΡΡΠ³ ΡΡΠΈΡ ΡΡΠ΅Ρ ΠΎΡΠ΅ΠΉ?
ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ Π΄Π΅Π»ΠΈΡΡΡ Π½Π° ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ³Π»Ρ ΠΠΉΠ»Π΅ΡΠ° ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ³Π»Ρ ΠΠΉΠ»Π΅ΡΠ° Π΄Π»Ρ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ.
1. Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ³ΠΎΠ» ΠΠΉΠ»Π΅ΡΠ°.
ΠΡΠ° ΡΠΈΡΡΠ°ΡΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Space.World, ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠΌΡ Π²ΡΡΠ΅, ΠΈ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ Π² ΠΠ½ΡΠΏΠ΅ΠΊΡΠΎΡΠ΅. ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΎΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΎΡΡΠ°Π΅ΡΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΠΉ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ, ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ. ΠΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, Π±ΡΠ΄Π΅Ρ ΠΎΡΠ΅Π½Ρ Π½Π°Π³Π»ΡΠ΄Π½ΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅:
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, ΠΈΠ·-Π·Π° ΡΠ°Π·Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ! (Π‘ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΡ Π½Π΅ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΠ΅Ρ Π·Π°ΠΊΠΎΠ½Ρ ΠΊΠΎΠΌΠΌΡΡΠ°ΡΠΈΠ²Π½ΠΎΡΡΠΈ)
ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΎΡΠΌΡΠ»Ρ Π΄Π»Ρ ΠΏΠΎΡΡΠ΄ΠΊΠ° Π²ΡΠ°ΡΠ΅Π½ΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΈ Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΅ΡΠΊΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠΌΠΈΠ½, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡΠ‘ΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΠ΅. ΠΡΠ»ΠΈ Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΡΠ½Π°ΡΠ°Π»Π° Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ x, Π·Π°ΡΠ΅ΠΌ Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ y ΠΈ, Π½Π°ΠΊΠΎΠ½Π΅Ρ, Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ z, ΡΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ΠΌ X-Y-Z. Π ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅.
Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Unity, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ ΠΈΠ· Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, ΡΡΠΎ Π΅Π³ΠΎ transform.Rotate () ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Z-X-Y.ΠΡΠ°ΠΊ, Π΅ΡΠ»ΠΈ Π² Unity, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΡΠ³Π»Π° ΠΠΉΠ»Π΅ΡΠ° (90,90,0), ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ ΡΠ»ΡΡΠ°Ρ 1.
2. ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ³ΠΎΠ» ΠΠΉΠ»Π΅ΡΠ°.
Π‘Π½Π°ΡΠ°Π»Π° ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π½Π° ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ:
ΠΠ°ΠΊ ΠΎΠ±ΡΡΠΎΡΡ Π΄Π΅Π»Π° Π² Unity? ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ Π½Π°ΠΏΡΡΠΌΡΡ, ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ, ΡΡΠΎ ΡΠΈΡΡΠ°ΡΠΈΡ Π² Unity ΡΠ°ΠΊΠ°Ρ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΡΠΈΡΡΠ°ΡΠΈΠΈ 1. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊΠΎΠ³Π΄Π° Π²ΡΠΎΡΠΎΠΉ ΡΠ°Π³ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΏΠΎΠ²ΠΎΡΠΎΡΠ΅ Π½Π° 90 Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ y, ΠΎΠ½ Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ y Π² Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ A.
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΡΠ΅ΠΊΡ Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΡ Π΅Π³ΠΎ Π΄Π²Π°ΠΆΠ΄Ρ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
ΠΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ, ΡΡΠΎ ΡΡΡΠ΅ΠΊΡ Π² ΡΡΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ Π² ΡΡΠ΅Π½Π°ΡΠΈΠΈ 1.
Π ΠΈΡΠΎΠ³Π΅ ΠΌΡ ΠΏΡΠΈΡΠ»ΠΈ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ Π²ΡΠ²ΠΎΠ΄Ρ: ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Space.Self ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Rotate Π² Unity, ΠΎΠ½ Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠ·ΠΎΠ²Π°.
3. ΠΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ³Π»Π° ΠΠΉΠ»Π΅ΡΠ° ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ³Π»Π° ΠΠΉΠ»Π΅ΡΠ°.
Π‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ³ΠΎΠ» ΠΠΉΠ»Π΅ΡΠ° ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ³ΠΎΠ» ΠΠΉΠ»Π΅ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ Π²Π·Π°ΠΈΠΌΠ½ΠΎ.
ΠΡΠ°Π²ΠΈΠ»ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ: Π² ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΡΠ³Π»Π΅ ΠΠΉΠ»Π΅ΡΠ°, Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ E Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ΠΌ, ΡΠ°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ ΡΠ³ΠΎΠ» ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° XYZ (a, b, c), ΡΡΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΡΠ³Π»Ρ ΠΠΉΠ»Π΅ΡΠ°, Π²ΡΠ°ΡΠ°ΡΡΠ΅ΠΌΡΡΡ ΠΏΠΎΠ΄ E (0, 0, c), ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΡ (0, b, 0) Π² ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ E ‘ΠΈ ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΡ (a, 0, 0) Π² ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ E «.
Rotate in Space.Self Ρ ΡΠ³Π»ΠΎΠΌ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° ZXY (a, b, c), ΡΡΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ Π² Space.Self (0, b, 0), ΠΈ Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π² Π½ΠΎΠ²ΠΎΠΌ Space.Self (a, 0, 0), rotate (0, 0, c) Π² ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΌ Space.Self.
ΠΠΎΠΊΠ°ΠΆΠ΅ΠΌ, ΡΡΠΎ Π΄Π²Π° ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π²ΡΡΠ΅ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Ρ. ΠΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΉ ΠΌΠ°ΡΡΠΈΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ.
ΠΠ°ΡΡΠΈΡΠ° Π²ΡΠ°ΡΠ΅Π½ΠΈΡ b Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ Y Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ E ΡΠ°Π²Π½Π° Rb (Rb == Ry),
ΠΠ°ΡΡΠΈΡΠ° Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° ΠΎΡΠΈ X a Π² Π½ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ E βΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° b Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ Y Π²ΠΎΠΊΡΡΠ³ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ E ΡΠ°Π²Π½Π° Ra,
ΠΠ°ΡΡΠΈΡΠ° Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° c ΠΎΡΠΈ Z Π² Π½ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ E «ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° a Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ X Π²ΠΎΠΊΡΡΠ³ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ E’is Rc.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΎΠ±ΡΠ°ΡΠ½Π°Ρ ΠΌΠ°ΡΡΠΈΡΠ° R ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΡΡΡ ΠΊΠ°ΠΊ R
ΠΠΎΠΊΠ°Π·Π°ΡΡ: Rz * Rx * Ry == Rb * Ra * Rc
Π΄ΠΎΠΊΠ°Π·Π°ΡΡ:
Rb == Ry, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ ΠΈΠ· ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ.
Ra = (Rb
) * Rx * Rb, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΎΡΠΈ X, ΠΌΠ°ΡΡΠΈΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ Ra Π² Π½ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ E ‘ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° Π²ΠΎΠΊΡΡΠ³ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ E Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ Y b, ΡΠ½Π°ΡΠ°Π»Π° ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅ Rb
Π΄Π»Ρ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° Π² ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ E ΠΠ½ΠΈΠ·, Π·Π°ΡΠ΅ΠΌ ΠΏΠΎΠ²Π΅ΡΠ½ΠΈΡΠ΅ a Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ X Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ E ΠΈ, Π½Π°ΠΊΠΎΠ½Π΅Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Rb, ΡΡΠΎΠ±Ρ Π²Π΅ΡΠ½ΡΡΡΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ E ‘.
Rc = ((Rb * Ra)
) * Rz * (Rb * Ra), ΠΏΡΠΈΡΠΈΠ½Π° ΡΠ° ΠΆΠ΅, ΡΡΠΎ ΠΈ Π²ΡΡΠ΅.
F,
ΠΠΏΡΠ°Π²ΠΎ = Rb * Ra * Rc
= Rb * Ra * ((Rb * Ra)
) * Rz * (Rb * Ra)
= Rz * Rb * Ra
= Rz * Rb * (Rb
) * Rx * Rb
= Rz * Rx * Rb
= Rz * Rx * Ry = Π²Π»Π΅Π²ΠΎ
ΠΠΎΡΠΎΠ²ΠΎ!
Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π²Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Ρ.
ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π²ΠΎΠΊΡΡΠ³ ΡΠ²ΠΎΠ΅ΠΉ ΠΎΡΠΈ
ΠΠΎΠΌΠΎΡΡ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΡΡ , ΠΊΡΡΡΠΎΠ²ΡΡ ΠΈ Π΄ΠΈΠΏΠ»ΠΎΠΌΠ½ΡΡ ΡΠ°Π±ΠΎΡ Π·Π΄Π΅ΡΡ.
ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π²ΠΎΠΊΡΡΠ³ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΉ ΠΎΡΠΈ
ΠΡΠΈΠ²Π΅ΡΡΡΠ²ΡΡ, ΡΠΎΡΡΠΌΡΠ°Π½Π΅. Π‘ΠΈΡΡΠ°ΡΠΈΡ: Π΅ΡΡΡ ΡΠ°ΠΌΠΎΠ»ΡΡ Ρ ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡΠΌΠΈ ΠΎΡΠ³Π°Π½Π°ΠΌΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ (ΡΠ»Π΅ΡΠΎΠ½Ρ, ΡΡΠ»Ρ.
ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π²ΠΎΠΊΡΡΠ³ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°
ΠΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π²ΠΎΠΊΡΡΠ³ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°? ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ: ΡΠΎΠ·Π΄Π°ΡΠΌ ΠΊΡΠ±, Π·Π°ΡΠ΅ΠΌ Π²Π½ΡΡΡΠΈ Π½Π΅Π³ΠΎ.
ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π²ΠΎΠΊΡΡΠ³ ΠΎΠ±ΡΠ΅ΠΊΡΠ°
ΠΠΎΠ±ΡΡΠΉ Π΄Π΅Π½Ρ. ΠΠ°ΠΊ Π·Π°ΡΡΠ°Π²ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡΠ΅ΠΊΡ Π²ΡΠ°ΡΠ°ΡΡΡΡ Π²ΠΎΠΊΡΡΠ³ Π΄ΡΡΠ³ΠΎΠ³ΠΎ?
ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΏΠΎ ΠΎΡΠΈ Z
ΠΠΎΠ±ΡΡΠΉ Π²Π΅ΡΠ΅Ρ, Guru Unity, ΠΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡΠ΅, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π²ΠΎΠΊΡΡΠ³ ΡΠ²ΠΎΠ΅ΠΉ ΠΎΡΠΈ Z Ρ Π·Π°ΠΆΠ°ΡΠΎΠΉ.
ΠΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉ Quaternion.Lerp.
Π¦ΠΈΡΡΠ° 2.0f ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Ρ ΠΊΠ°ΠΊΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΡΡ Π½ΡΠΆΠ½ΠΎ Π²ΡΠ°ΡΠ°ΡΡΡΡ.
ΠΠΎΠΆΠ΅ΡΡ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠ²ΠΎΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π° Π»ΡΡΡΠ΅ Time.deltatime.
Π£Π΄Π°ΡΠΈ
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΡΡ. ΠΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° Π΄ΡΡΠ³Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° ΡΠΎΡΠΊΠ° Π²ΡΡΡΡΠ΅Π»Π° ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ΅ΠΏΠ΅ΡΡ ΡΠΎΠΆΠ΅ Π½Π°ΡΠ°Π»Π° Π²ΡΠ°ΡΠ°ΡΡΡΡ Π²ΠΎΠΊΡΡΠ³ ΠΎΡΠΈ ΠΈ Π²ΡΠΏΡΡΠΊΠ°ΡΡ ΡΠ½Π°ΡΡΠ΄Ρ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ Π³Π΄Π΅ ΠΎΠ½Π° Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ Π² ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ Π΅Π΅ ΠΊΠ°ΠΊ-Π½ΠΈΠ±ΡΠ΄Ρ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π² ΠΎΠ΄Π½ΠΎΠΉ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ?
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΡΠ΅ΡΠ΅Π· 5 ΠΌΠΈΠ½ΡΡ
Π΅ΡΠ»ΠΈ ΠΆΠ΅ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π΅Π΅ ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΈ ΠΎΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡ ΠΏΠΎΠ΄Π°Π»ΡΡΠ΅ ΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ½Π°ΡΡΠ΄Ρ Π½Π°ΡΠΈΠ½Π°ΡΡ Π²ΡΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΡΠΎΡΠΊΠΈ, Π½ΠΎ ΠΈΡ
ΡΡΠ°Π΅ΠΊΡΠΎΡΠΈΡ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Ρ
Π°ΠΎΡΠΈΡΠ½ΠΎΠΉ, ΡΠ½Π°ΡΡΠ΄Ρ Π»Π΅ΡΡΡ Π² ΡΠ°Π·Π½ΡΠ΅ ΡΡΠΎΡΠΎΠ½Ρ, Π° Π½Π΅ ΠΏΠΎ ΠΏΡΡΠΌΠΎΠΉ.
ΠΠΎΠΌΠΎΡΡ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΡΡ , ΠΊΡΡΡΠΎΠ²ΡΡ ΠΈ Π΄ΠΈΠΏΠ»ΠΎΠΌΠ½ΡΡ ΡΠ°Π±ΠΎΡ Π·Π΄Π΅ΡΡ.
ΠΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ Π²Π»Π΅Π²ΠΎ/Π²ΠΏΡΠ°Π²ΠΎ ΠΏΡΠΎΠΊΡΡΡΠΈΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π²ΠΎΠΊΡΡΠ³ ΡΠ²ΠΎΠ΅ΠΉ ΠΎΡΠΈ
ΠΡΠ΅ΠΌ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π΄Π½Ρ/Π²Π΅ΡΠ΅ΡΠ°! ΠΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π± ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ³Π΄Π° Ρ Π½Π°ΠΆΠΈΠΌΠ°Ρ Π²Π»Π΅Π²ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡ Π½Π° ΡΡΠ΅Π½Π΅.
ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΏΠΎ ΠΎΡΠΈ Z Π΄ΠΆΠΎΠΉΡΡΠΈΠΊΠΎΠΌ (2D)
ΠΡΠΈΠ²Π΅ΡΡΡΠ²ΡΡ ΠΎΠ±ΠΈΡΠ°ΡΠ΅Π»Π΅ΠΉ ΡΠΎΡΡΠΌΠ°! ΠΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ Π² ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΠΎΡΠΈ Z.
ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΠΏΠΎ ΠΎΡΠΈ Z
ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅. ΠΠ°ΡΠ°Π» Π½Π΅Π΄Π°Π²Π½ΠΎ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ unity. Π£ ΠΌΠ΅Π½Ρ Π½Π° ΡΡΠ΅Π½Π΅ ΠΎΠ±ΡΠ΅ΠΊΡ Π΄Π²ΠΈΠΆΠ΅ΡΡΡ ΠΎΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ΅ΡΡ ΠΊ.
ΠΠ±ΡΠ΅ΠΊΡ Ρ RigidBody2D ΠΈ Collider (Π½Π΅Π²Π°ΠΆΠ½ΠΎ box ΠΈΠ»ΠΈ circle) Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π²ΠΎΠΊΡΡΠ³ ΡΠ²ΠΎΠ΅ΠΉ ΠΎΡΠΈ
ΠΡΠ»ΠΈ ΠΏΠ΅ΡΡΠΎΠ½Π°ΠΆΠ΅ΠΌ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΠΈΡΠΈΡ RigidBody2D ΠΈ Collider (Π½Π΅Π²Π°ΠΆΠ½ΠΎ box ΠΈΠ»ΠΈ circle), Π²ΠΏΠ»ΠΎΡΠ½ΡΡ ΠΏΠΎΠ΄ΠΎΠΉΡΠΈ.
ΠΠΎΠ·ΠΈΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ³ΡΠΎΠ²ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
ΠΠΎ Π²ΡΠ΅ΠΌΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ³ΡΡ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π² Π²Π°ΡΠ΅ΠΌ ΠΈΠ³ΡΠΎΠ²ΠΎΠΌ ΠΌΠΈΡΠ΅.
ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅, Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΆΠ°ΡΡ ΠΈ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΈΡΡ ΡΠ΅Π½ΡΡ Π³ΠΈΠ·ΠΌΠΎ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΡΠ°Π·Ρ ΠΏΠΎ Π²ΡΠ΅ΠΌ ΠΎΡΡΠΌ. Π ΡΠ΅Π½ΡΡΠ΅ Π³ΠΈΠ·ΠΌΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ ΡΡΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π²Π΄ΠΎΠ»Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ (Ρ.Π΅. ΠΌΠΎΠ³ΡΡ ΡΠΌΠ΅ΡΠ°ΡΡΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π΄Π²Π΅ ΠΎΡΠΈ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ ΡΡΠ΅ΡΡΡ Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½Π°). ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΡΠ΅ΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠ° ΠΌΡΡΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΆΠ°ΡΡ ΡΡΠ΅Π΄Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΈ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΈΡΡ ΠΊΡΡΡΠΎΡ, ΡΡΠΎΠ±Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΠΎΡΡΡ (Π΅Ρ ΡΡΡΠ΅Π»ΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡ Π½Π° ΠΆΡΠ»ΡΡΡ).
ΠΡΠ»ΠΈ Π²ΡΠ±ΡΠ°Π½ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΌΠ΅Π½ΡΡΡ ΠΏΠΎΠ²ΠΎΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π·Π°ΠΆΠ°Π² ΠΈ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΊΠΈΠ²Π°Ρ ΠΎΡΠΈ Π³ΠΈΠ·ΠΌΠΎ ΠΊΠ°ΡΠΊΠ°ΡΠ½ΠΎΠΉ ΡΡΠ΅ΡΡ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ Π²ΠΎΠΊΡΡΠ³ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. Π’Π°ΠΊ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ, ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΠ½Π½Π°Ρ ΠΎΡΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΡΠ°ΡΠ΅Π½Π° Π² ΠΆΡΠ»ΡΡΠΉ ΡΠ²Π΅Ρ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π° ΠΊΠ»ΠΈΠΊΠΎΠΌ ΠΈ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΊΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ΅Π΄Π½Π΅ΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΈ.
ΠΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ ΠΌΠ΅Π½ΡΡΡ ΠΌΠ°ΡΡΡΠ°Π± ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎ ΠΏΠΎ Π²ΡΠ΅ΠΌ ΠΎΡΡΠΌ ΡΡΠ°Π·Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΊΠΈΠ²Π°Π½ΠΈΡ ΠΊΡΠ±Π° Π² ΡΠ΅Π½ΡΡΠ΅ Π³ΠΈΠ·ΠΌΠΎ. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΠΈ ΠΏΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ, Π½ΠΎ Π²Π°ΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ Ρ ΠΎΡΡΠΎΡΠΎΠΆΠ½ΠΎΡΡΡΡ, Π΅ΡΠ»ΠΈ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π΅ΡΡΡ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, Ρ.ΠΊ. ΡΡΡΠ΅ΠΊΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΡΡΠ°Π½Π½ΠΎ. Π Π²Π½ΠΎΠ²Ρ, ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΠΎΡΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄ΠΊΡΠ°ΡΠ΅Π½Π° Π² ΠΆΡΠ»ΡΡΠΉ ΡΠ²Π΅Ρ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π° ΡΠ°ΡΠΊΠ°Π½ΠΈΠ΅ΠΌ ΡΡΠ΅Π΄Π½Π΅ΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΈ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ 2D, ΠΎΡΡ Z Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π° Π² ΡΡΠ΅Π½Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π³ΠΈΠ·ΠΌΠΎ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π±ΡΠ²Π°Π΅Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΡ Z Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π°Ρ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ ΡΠ΅Π»Π΅ΠΉ; Π² ΡΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°ΡΡ Π²Ρ Π²ΡΠ΅ Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΎΡΡ Z Π² ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΎΡΠ΅.
ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΠ³ΡΠΎΠ²ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΡΠΌ. ΡΡΡΠ°Π½ΠΈΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Transform.
ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π³ΠΈΠ·ΠΌΠΎ
ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π³ΠΈΠ·ΠΌΠΎ( Gizmo Display Toggles ) ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ .
ΠΡΠΈΠ²ΡΠ·ΠΊΠ° ΠΊ ΡΠ΅ΡΠΊΠ΅
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ°Π³, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ, Π²ΡΠ±ΡΠ°Π² Π² ΠΌΠ΅Π½Ρ Edit->Snap Settingsβ¦
ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ ΠΊ ΡΠ΅ΡΠΊΠ΅ Π² ΠΎΠΊΠ½Π° Scene.
ΠΡΠΈΠ²ΡΠ·ΠΊΠ° ΠΊ ΠΏΠΎΠ²Π΅ΡΡ Π½ΠΎΡΡΠΈ
ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π²Π·Π³Π»ΡΠ΄Π°
ΠΠ΅ΡΡΠΈΠ½Π½Π°Ρ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠ°
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠΎΠΈΡΡ ΠΌΠΈΡΡ Π΅ΡΠ΅ Π±ΡΡΡΡΠ΅Π΅ Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ βΠ²Π΅ΡΡΠΈΠ½Π½Π°Ρ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠ°β( Vertex snapping ). ΠΡΠ° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠ°, Π½ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΌΠΎΡΠ½ΡΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ Π² Unity. ΠΠ½Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ Π²Π·ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅Ρ Π·Π° Π»ΡΠ±ΡΡ Π²Π΅ΡΡΠΈΠ½Ρ ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΡΡΠΊΠΈ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ Π΅Π³ΠΎ Π² ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΠ½Ρ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ Π²ΡΠ±Π΅ΡΠΈΡΠ΅.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΌΠΈΡΡ ΠΎΡΠ΅Π½Ρ Π±ΡΡΡΡΠΎ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΠΏΠΎΠ΄Π³ΠΎΠ½ΡΡΡ Π΄ΠΎΡΠΎΠ³ΠΈ Π² Π³ΠΎΠ½ΠΎΡΠ½ΠΎΠΉ ΠΈΠ³ΡΠ΅ Ρ Π²ΡΡΠΎΠΊΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΡΡ, Π»ΠΈΠ±ΠΎ ΡΠ°ΡΡΡΠ°Π²Π»ΡΡΡ Π±ΠΎΠ½ΡΡΡ Π½Π° Π²Π΅ΡΡΠΈΠ½Π°Ρ ΠΌΠ΅ΡΠ°.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²Π΅ΡΡΠΈΠ½Π½ΡΡ ΠΏΡΠΈΠ²ΡΠ·ΠΊΡ Π² Unity Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ. ΠΡΠΎΡΡΠΎ ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ ΡΡΠΈΠΌ ΡΠ°Π³Π°ΠΌ:
ΠΠΎΠ³ΡΡΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠΊΡΠΈΠΏΡΡ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ Π΄Π²ΠΈΠΆΠΊΠ° Unity3d, Ρ.1
ΠΠ³ΡΠΎΠ²ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ MyObject.
Π‘ΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΏΠΎ ΡΡΡΠ»ΠΊΡ myObject.
ΠΠΎΠΈΡΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΏΠΎ Π΅Π³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ.
Π’Π΅Π³ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΏΠΎΠΌΠ΅ΡΠ°Π½ΠΈΡ Π³ΡΡΠΏΠΏΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΎ ΡΡ
ΠΎΠ΄Π½ΡΠΌΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌΠΈ, Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠ΅ΡΡ Π² Π΅Π΄ΠΈΠ½ΠΎΠΉ ΡΡΠ΅Π½Π΅.
ΠΠΎΠΈΡΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΏΠΎ ΡΠ΅Π³Ρ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ:
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ ΡΠ΅Π³ΠΎΠΌ:
ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΠ΅Π³Π°. ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ true, Π΅ΡΠ»ΠΈ Ρ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΈΠΌΠ΅Π΅ΡΡΡ ΡΠ΅Π³ MyTag:
Π£Π½ΠΈΡΡΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ΅ΡΠ΅Π· ΠΌΠΈΠ½ΡΡΡ, ΠΏΠΎΡΠ»Π΅ Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ:
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ component, ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π½ΡΠΉ ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΡ GameObject, Π»ΠΈΠ±ΠΎ null, Π΅ΡΠ»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡ Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°. ΠΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄ΡΡΠ³ΠΈΠΌ ΡΠΊΡΠΈΠΏΡΠ°ΠΌ, ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π½ΡΠΌ ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΡ.
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ΅ ΠΈΠΌΠ΅ΡΡΠΈΠ΅ΡΡ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΡΠΈΠΏΠ° componentType.
ΠΡΠΈΠ²ΡΠ·Π°ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ myComponent ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΡ GameObject ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΡΠ»ΠΊΡ Π½Π° Π½Π΅Π³ΠΎ.
ΠΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°
Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ transform ΠΎΠ±ΡΠ΅ΠΊΡΠ° GameObject ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π² ΡΠ΅Π±Π΅ Π΄Π°Π½Π½ΡΠ΅ ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π² ΠΈΠ³ΡΠΎΠ²ΠΎΠΌ ΠΌΠΈΡΠ΅.
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π² ΠΈΠ³ΡΠΎΠ²ΠΎΠΌ ΠΌΠΈΡΠ΅. ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΠ°Ρ Π²Π΅Π»ΠΈΡΠΈΠ½Π° ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΠΏ Vector3, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ· ΡΠ΅Π±Ρ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ· 3 ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ β x, y ΠΈ z:
ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ Π² ΡΠΎΡΠΊΡ 0, 10, 0 ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠΈΡΠ°.
Π’ΠΎΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, ΡΡΠΎ ΠΈ Π² ΡΠ»ΡΡΠ°Π΅ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ, Π½ΠΎ Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ. ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠ°ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. Π ΡΠ»ΡΡΠ°Π΅ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΌΠΈ:
ΠΠΎΠ²ΠΎΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π² ΡΠ³Π»Π°Ρ ΠΠΉΠ»Π΅ΡΠ°. ΠΠ΅ΡΠΎΠ΄ ΡΠ°ΠΊΠΆΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Vector3:
Π’ΠΎΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, ΡΡΠΎ ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, Π½ΠΎ ΠΏΠΎΠ²ΠΎΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ°ΡΡΡΠΈΡΡΠ²Π°Π΅ΡΡΡ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°:
Π’Π΅ΠΊΡΡΠΈΠΉ ΡΠ³ΠΎΠ» ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠΉ Π½Π° ΠΊΠ²Π°ΡΠ΅ΡΠ½ΠΈΠΎΠ½Π°Ρ . ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΈΠΏΠ° Quaternion.
Π’Π΅ΠΊΡΡΠΈΠΉ ΠΏΠΎΠ²ΠΎΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠΉ Π½Π° ΠΊΠ²Π°ΡΠ΅ΡΠ½ΠΈΠΎΠ½Π°Ρ , Π½ΠΎ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°:
Π‘Π±ΡΠΎΡ ΡΠ³Π»Π° ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠ°:
ΠΡΠ°ΡΠ°Π΅ΠΌ Π½Π°Ρ ΠΎΠ±ΡΠ΅ΠΊΡ Π² ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΡΡΠΎΡΠΎΠ½Ρ ΡΠΎ ΡΠΊΠΎΡΠΎΡΡΡΡ 1 Π³ΡΠ°Π΄ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ. ΠΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΈΠΏΠ° Vector3. ΠΠ΅ΡΠΎΠ΄ deltaTime ΠΎΠ±ΡΠ΅ΠΊΡΠ° Time ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π²ΡΠ΅ΠΌΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°Ρ , Π·Π°ΡΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΊΠ°Π΄ΡΠ°:
Π’ΠΎΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, ΡΡΠΎ ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, Π½ΠΎ Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΡΠΎΠ΄ΠΈΡΠ΅Π»Ρ:
ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π΅ΠΌ Π½Π°Ρ ΠΎΠ±ΡΠ΅ΠΊΡ Π² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΡΠΎ ΡΠΊΠΎΡΠΎΡΡΡΡ 1 ΡΠ½ΠΈΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ. Π’Π°ΠΊΠΆΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Vector3:
Π€ΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΈΠ³ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°
ΠΠ΅ΡΠΎΠ΄ rigidbody ΠΎΠ±ΡΠ΅ΠΊΡΠ° GameObject Ρ ΡΠ°Π½ΠΈΡ Π² ΡΠ΅Π±Π΅ Π΅Π³ΠΎ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°. ΠΡΠ΅ΠΆΠ΄Π΅, ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ rigidbody, Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊ ΠΈΠ³ΡΠΎΠ²ΠΎΠΌΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ.
ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ/Π·Π°Π΄Π°Π΅ΠΌ Π²Π΅ΠΊΡΠΎΡ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°:
Π‘ΠΈΠ»Π° ΠΏΡΠΎΡΠΈΠ²ΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. ΠΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΡ ΡΠΊΠΎΡΠΎΡΡΠΈ, Π² ΡΡΠ΅Π΄Π΅ Ρ ΠΎΡΡΡΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΠΈΠ»ΠΎΠΉ ΡΡΠ΅Π½ΠΈΡ. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΡ ΠΏΠ°Π΄Π°ΡΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΠ°ΡΠ°ΡΡΡΠ°. ΠΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ:
ΠΠ°Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΡ Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ ΠΎΡ 0.1 Π΄ΠΎ 10. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π±ΠΎΠ»ΡΡΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ Π½Π΅ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΡΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌ ΠΏΡΠΈ ΡΠ°ΡΡΠ΅ΡΠ΅ ΡΠΈΠ·ΠΈΠΊΠΈ:
ΠΠ»ΠΈΡΠ½ΠΈΠ΅ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ Π³ΡΠ°Π²ΠΈΡΠ°ΡΠΈΠΈ. ΠΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° Π±ΡΠ»Π΅Π²ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ Π²Π»ΠΈΡΠ½ΠΈΠ΅ Π³ΡΠ°Π²ΠΈΡΠ°ΡΠΈΠΈ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ:
ΠΠ»ΠΈΡΠ½ΠΈΠ΅ ΡΠΈΠ·ΠΈΠΊΠΈ Π½Π° ΠΈΠ³ΡΠΎΠ²ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ. ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΡΠ°ΡΡΠΈΡΠ½ΠΎ, Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π²Π»ΠΈΡΠ½ΠΈΠ΅ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ Π·Π°ΠΊΠΎΠ½ΠΎΠ² Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ:
ΠΠ°ΠΏΡΠ΅Ρ Π½Π° Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΠ³ΠΎΠ» ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° Π΄Π°ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ:
Π£ΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΡΠΎΡΠΊΠΈ ΡΠ΅Π½ΡΡΠ° ΠΌΠ°ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. ΠΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΠΎΠ³ΠΎ Π½Π°ΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Vector3.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΠΈ Π΄Π»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΉ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ. ΠΠΎΠΆΠ½ΠΎ Π²ΡΠΊΠ»ΡΡΠΈΡΡ, ΡΠΎΠ³Π΄Π° Π²Π°Ρ ΠΎΠ±ΡΠ΅ΠΊΡ Π±ΡΠ΄Π΅Ρ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ Π»ΡΠ±ΡΠ΅ ΡΡΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ:
Π Π΅ΠΆΠΈΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΡΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ. ΠΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·Π½ΡΡ
ΡΠ΅ΠΆΠΈΠΌΠΎΠ²:
CollisionDetectionMode.ContinuousDynamic Π΄Π»Ρ Π±ΡΡΡΡΠΎ Π΄Π²ΠΈΠΆΡΡΠΈΡ
ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²;
CollisionDetectionMode.Continuous Π΄Π»Ρ ΡΡΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΉ Ρ Π±ΡΡΡΡΠΎ Π΄Π²ΠΈΠΆΡΡΠΈΠΌΠΈΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ;
CollisionDetectionMode.Discrete (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ) Π΄Π»Ρ ΠΎΠ±ΡΡΠ½ΡΡ
ΡΡΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΉ;
Π ΡΠ»ΡΡΠ°Π΅ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΡΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΉ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
ΠΠ°Π΄Π°ΡΡ ΠΏΠ»ΠΎΡΠ½ΠΎΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°:
ΠΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈΠΌΠΏΡΠ»ΡΡ ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΡ Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ Π²Π΅ΠΊΡΠΎΡΠΎΠΌ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠΌΠΏΡΠ»ΡΡΠ° ΠΎΠ±ΡΠ΅ΠΊΡ ΠΏΡΠΈΠ΄Π΅Ρ Π² Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΏΠΎΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ ΡΠΈΠ»Π΅ ΠΈΠΌΠΏΡΠ»ΡΡΠ°.
ΠΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈΠΌΠΏΡΠ»ΡΡ ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΡ Ρ Π²Π΅ΠΊΡΠΎΡΠΎΠΌ Π² Π΅Π³ΠΎ (ΠΎΠ±ΡΠ΅ΠΊΡΠ°) ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ:
ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΊΡΡΡΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ. ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° Π·Π°ΡΡΠ°Π²ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡ Π²ΡΠ°ΡΠ°ΡΡΡΡ Π²ΠΎΠΊΡΡΠ³ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ΅Π½ΡΡΠ° ΠΌΠ°ΡΡ GameObject.rigidbody.centerOfMass.
Π’ΠΎΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, ΡΡΠΎ ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, Π½ΠΎ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ°:
ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈΠΌΠΏΡΠ»ΡΡΠ° ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ· Π²Π½Π΅ΡΠ½Π΅ΠΉ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡΠΎΡΠΊΠΈ. ΠΠ°ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ Π΄Π²ΠΈΠ³Π°ΡΡΡΡ ΠΈ Π²ΡΠ°ΡΠ°ΡΡΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ. ΠΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΡΠΈΠΌΡΠ»ΡΡΠΈΠΈ ΠΏΠΎΠΏΠ°Π΄Π°Π½ΠΈΡ Π² ΠΎΠ±ΡΠ΅ΠΊΡ ΠΏΡΠ»ΠΈ. ΠΠ΅ΡΠ²ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π²Π΅ΠΊΡΠΎΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΈΠ»Ρ, Π²ΡΠΎΡΠΎΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ β ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠΎΡΠΊΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΈΠ»Ρ.
ΠΠ»Ρ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠΉ ΡΠΈΠΌΡΠ»ΡΡΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΌΠ½ΡΡ Π²Π·ΡΡΠ²ΠΎΠ² Π² Unity3D Π΅ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄. ΠΠ΅ΡΠ²ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΊΠ°Π·Π°ΡΡ ΠΌΠΎΡΠ½ΠΎΡΡΡ ΠΈΠΌΠΏΡΠ»ΡΡΠ°, Π²ΡΠΎΡΠΎΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ β ΡΠΎΡΠΊΡ, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΈΠΌΠΏΡΠ»ΡΡ, ΡΡΠ΅ΡΠΈΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ β ΡΠ°Π΄ΠΈΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠΌΠΏΡΠ»ΡΡΠ°, ΡΠ΅ΡΠ²Π΅ΡΡΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ β ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΆΠ°ΡΠΈΡ ΡΡΠ΅ΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΡΠΈΠ»Ρ, ΠΏΡΡΡΠΉ, Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΈΠΏ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΈΠΌΠΏΡΠ»ΡΡΠ°:
ΠΠ°ΡΡΠ°Π²ΠΈΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ Β«ΡΡΠ½ΡΡΡΒ», ΠΈ Π·Π°ΠΏΡΠ΅ΡΠΈΡΡ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠΈΠΉ ΡΠ°ΡΡΠ΅Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π΄Π»Ρ Π½Π΅Π³ΠΎ:
ΠΡΠΎΠ²Π΅ΡΠΈΡΡ Β«Π·Π°ΡΠ½ΡΠ»Β» Π»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡ:
Β«Π Π°Π·Π±ΡΠ΄ΠΈΡΡΒ» ΠΎΠ±ΡΠ΅ΠΊΡ Π΄Π»Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Π»ΠΈΡΠ½ΠΈΡ ΡΠΈΠ·ΠΈΠΊΠΈ Π½Π° Π½Π΅Π³ΠΎ:
Π’ΡΠ°ΡΡΠΈΡΠΎΠ²ΠΊΠ° Π»ΡΡΠ΅ΠΉ
ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΌΡΡ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π½Π° Unity3D ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΡΠΎ Ray. ΠΠ°Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΡΡΡΠΈΡΡ Π»ΡΡ ΠΈΠ· ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡΠΎΡΠΊΠΈ, Π² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ, ΠΈ Π²Π΅ΡΠ½ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ½ ΡΠΌΠΎΠ³ Π΄ΠΎΡΡΠΈΡΡ.
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° RaycastHit, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΎΠ±ΡΠ΅ΠΊΡΠ΅, Ρ ΠΊΠΎΡΠΎΡΡΠΌ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ Π»ΡΡ:
ΠΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ Π»ΡΡ Π΄Π»ΠΈΠ½ΠΎΠΉ Π² 50 ΡΠ½ΠΈΡΠΎΠ² ΠΈΠ· ΠΏΠΎΠ·ΠΈΡΠΈΠΈ rayPosition Π² Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ rayVector, ΠΈ Π·Π°Π½ΠΎΡΠΈΠΌ ΠΎΠ±ΡΠ΅ΠΊΡ, Ρ ΠΊΠΎΡΠΎΡΡΠΌ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ Π»ΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ hit:
ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ Π΄ΠΈΡΡΠ°Π½ΡΠΈΡ Π΄ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, Ρ ΠΊΠΎΡΠΎΡΡΠΌ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ Π»ΡΡ. ΠΠΈΡΡΠ°Π½ΡΠΈΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ ΠΏΡΠΎΡΡΠΆΠ΅Π½Π½ΠΎΡΡΡ Π»ΡΡΠ°:
ΠΠ½ΠΎΠ³Π΄Π° Π±ΡΠ²Π°Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠΌΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, Ρ ΠΊΠΎΡΠΎΡΡΠΌ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ ΡΡΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ Π»ΡΡΠ°. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ:
ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ΅Π³Π° ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΏΠΎΡΠΎΠ±:
Unity3D ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π΅ΡΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΠΈ Π½Π΅ ΠΎΡΠ΅Π½Ρ. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ»Π½ΡΠΉ ΠΈΡ ΠΎΠ±Π·ΠΎΡ ΡΠ²Π΅Π»ΠΈΡΠΈΠ» Π±Ρ ΠΈ Π±Π΅Π· ΡΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΌΠ½ΡΡ ΡΡΠ°ΡΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ Ρ ΠΏΠΎΡΡΠ°ΡΠ°ΡΡΡ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΠΎΠ± ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ, Π΅ΡΠ»ΠΈ ΠΌΠ½Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡΡ ΡΠ°ΠΊΠ°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ. Π― Π±Ρ Ρ ΠΎΡΠ΅Π» ΠΏΠΎΠΆΠ΅Π»Π°ΡΡ ΠΎΠΏΡΡΠ½ΡΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΏΠΎΠ±ΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², Π° Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΌ β ΡΡΠΏΠ΅Ρ ΠΎΠ² ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ ΠΎΡΠΊΡΡΡΠΈΠΉ. Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΡΠΎ ΡΠ΄Π΅Π»ΠΈΠ»ΠΈ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅.