Собсна возникла необходимость чего-то подобного, т.е. когда объект был видим только лишь если находится на фоне какого либо другого объекта, возможно ли?
В общем, сейчас столкнулся с проблемой - мне нужно, чтобы при накладывании текстуры на дефаултный Куб каждая грань была разной, ну т.е. стены, крыша, фасад и прочее. Но черт возьми, если в прошлых моих средах разработки были даже самые примитивные, но все-таки способы разметки мапов, да и вообще поддержка оных на стандартных фигурах, то тут я просто в ступоре, текстура просто-напросто накладывается на каждую грань куба. Как в общем-то реализовать изложенное в первом предложении?
Всем привет! Столкнулся с проблемой - никак не могу додумать, как отследить два тапа подряд на андройде. Долго гуглил - в основном на подобные вопросы посылали учить tapCount, но оно работает лишь на айосе=( Так что обращаюсь к здешним - каким образом наиболее компактно можно отследить дабл тап?
Сделал патрулирование территории таким образом: противник постоянно поворачивается, как только его рей контактирует с вейпоинтом, который идет по порядку, противник перестает поворачиваться и идет на вейпоинт, а потом все по новый. И все бы ничего, но т.к. хотел запилить максимальную удобность при последующем использовании - вейпоинты сделанны массивом, поэтому когда противник достигает последнего вейпоинта, происходит проверка, и если это - последний вейпоинт, то текущая вейпоинт-цель сбрасывается на самую первую (т.е. на ноль), и персонаж должен идти на нее. Но вот незадача - если я сбрасываю цель в нулевой вейпоинт, то противник продолжает вращаться, не имея возможности найти его, хотя если поставить не нулевой вейпоинт массива, а например первый, то он спокойно пинается реем об него и идет. Т.к. пытаюсь добиться максимальной удобности, то мне такой расклад не подходит, поэтому прошу вашей помощи, что здесь не так:
Код:
Цитата
var walkSpeed : float = 1.5f; var rotateSpeed : float = 15.0f; var waypointDetection : boolean; var playerDetection : boolean; var waypoint : GameObject[] ; var currentWaypoint : int = 0; var lastWaypoint : int;
function Update () {
var ray = new Ray(transform.position,transform.forward); var hit : RaycastHit; var target : Vector3 = waypoint[currentWaypoint].transform.position; var moveDirection : Vector3 = target - transform.position;
В общем, отталкиваясь от кода выше, я написал свой, с кусками другого) Короче, проблема в том, что после перехода на другую дорожку, персонаж еще скользит какое-то время по направлению движения, как кубик льда. И да, когда я в провожу по экрану, то действие выполняется, но стоит мне оторвать пальцы, как персонаж прекращает движение, будто я через while делаю (хотя у меня именно через if и Вектор3.Лерп).
UPD: Либо сделать проверку на то, чтобы между переходами на дорожки была проверка, был ли убран палец с тачскрина, или нет.
Код
Цитата
var Speed : float = 2.0f; var playerxwanted = Vector3(0.0,0.0,0.0); var currentRoad; var SideSpeed : float = 1.0f;
function OnTriggerEnter (other : Collider) { Speed = 0; } function OnTriggerExit (other : Collider) { Speed = 2; }
function Start(){ currentRoad = 5; }
function FixedUpdate () { transform.position += transform.forward *Speed * Time.deltaTime; if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Moved) { var touchDeltaPosition:Vector2 = Input.GetTouch(0).deltaPosition; { switch(currentRoad) { case 1: playerxwanted.x = -8.0f; if(touchDeltaPosition.x > 8) { currentRoad = 2; } break;
Сорри за приставучесть, но как сделать, чтобы перескакивал персонаж на другую дорожку единожды? Т.е., сейчас выходит так, что если провести пальцем и ударживать, то движение идет практически бесприрывно. Возможно ли сделать задержку, либо 1 линия по тач скрину - 1 смена дорожки?
Сообщение отредактировал Grimerdie - Вторник, 24 Июня 2014, 17:27
Почти что, 1,4. Проблема в том, что как бы и 2.8, и 4.2 тоже больше 0.5, поэтому, кроме добавления еще одной переменной (что весьма сомнительно) я ничего не придумал.
И на сколько я смог понять, ты просто жмешь влево и право чтоб менять дорожку? Если да то не понятно чем это отличается от 3 или более дорожек? Я не понимаю что именно ты не можешь сделать, ведь ты уже можешь передвигаться на 3х
Да, эта игра. Просмотри код внимательно, и узри, как происходит проверка того, на какой дорожке ты в данный момент, и поймешь, в чем моя проблема.
У меня возникла проблема, я делаю раннер на Android, как Сабвей Серф. В общем, все бы ничего, код управления написал, но возникла проблема: у меня по задумке должно быть не 3 дорожки, как в Сабвее, а 9. Как три дорожки сделать я додумал, а вот как сделать больше трех голову ломаю все утро. Можете наводку дать, как добавить еще дорожек?
Цитата
using UnityEngine; using System.Collections;
public class Movent : MonoBehaviour { public GameObject Player; //Объявляем игрока int Speed = 2; //Объявляем скорость bool Alive; //Мы живы? Vector3 Damp = new Vector3(0.0f,0.0f,0.0f);