Android платформер
|
|
Greexon | Дата: Вторник, 15 Июля 2014, 20:46 | Сообщение # 1 |
почетный гость
Сейчас нет на сайте
| Помогите с реализацией управления в платформере для Android. Я научил игрока ходить при помощи сенсорных кнопок и метода Translate, но мне нужно чтобы он разворачивался в ту сторону в которую идёт, подскажите как это лучше всего реализовать.
Сообщение отредактировал Greexon - Вторник, 15 Июля 2014, 20:46 |
|
| |
EvolutionEXE | Дата: Вторник, 15 Июля 2014, 20:59 | Сообщение # 2 |
был не раз
Сейчас нет на сайте
| реализовать на каком коде JavaScript или C# ?
Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем!
|
|
| |
Greexon | Дата: Вторник, 15 Июля 2014, 21:06 | Сообщение # 3 |
почетный гость
Сейчас нет на сайте
| C#
|
|
| |
EvolutionEXE | Дата: Вторник, 15 Июля 2014, 21:16 | Сообщение # 4 |
был не раз
Сейчас нет на сайте
| вот эта ссылка в помощь если это не то что нужно извините тогда
Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем!
|
|
| |
Greexon | Дата: Вторник, 15 Июля 2014, 21:23 | Сообщение # 5 |
почетный гость
Сейчас нет на сайте
| Открылась стартовая страница Unity Scripting API, мне нужно чтобы персонаж смотрел в ту сторону в которую движется.
|
|
| |
EvolutionEXE | Дата: Вторник, 15 Июля 2014, 21:32 | Сообщение # 6 |
был не раз
Сейчас нет на сайте
| я к сожалению мог дать только ссылку, потому что я C# сам плохо знаю, но на C++ могу помочь на ура , но ведь в Unity же только C# и JS поддерживается
Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем!
|
|
| |
Greexon | Дата: Вторник, 15 Июля 2014, 21:35 | Сообщение # 7 |
почетный гость
Сейчас нет на сайте
| C++ работает со специальным плагином, если можете то расскажите хотя бы логику может хватит учитывая что C# эволюционировал из C++
|
|
| |
EvolutionEXE | Дата: Вторник, 15 Июля 2014, 22:02 | Сообщение # 8 |
был не раз
Сейчас нет на сайте
| он там не корректно работает я проверял . а вообще извините но я сейчас занят может после завтра помогу .
Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем!
|
|
| |
Левша | Дата: Вторник, 15 Июля 2014, 22:05 | Сообщение # 9 |
почти ветеран
Сейчас нет на сайте
| Цитата Greexon ( ) мне нужно чтобы он разворачивался в ту сторону в которую идёт, подскажите как это лучше всего реализовать. 1. Отрицательный скалинг 2. 2-сторонний материал + поворот по оси Y на 180гр. 3. Смена текстур. И т.д и т.п.
X.cor.R (Prologue)
Сообщение отредактировал Левша - Вторник, 15 Июля 2014, 22:05 |
|
| |
Greexon | Дата: Вторник, 15 Июля 2014, 22:15 | Сообщение # 10 |
почетный гость
Сейчас нет на сайте
| Платформер с видом сбоку, но в 3D, мне нужны примеры кода поворота на 180 градусов и проверки в какую сторону повёрнут персоонаж при нажатии на кнопку перемещения вправо или влево
|
|
| |
Левша | Дата: Вторник, 15 Июля 2014, 23:56 | Сообщение # 11 |
почти ветеран
Сейчас нет на сайте
| Цитата Greexon ( ) в 3D, мне нужны примеры кода поворота на 180 градусов и проверки в какую сторону повёрнут персоонаж при нажатии на кнопку перемещения вправо или влево
transform.eulerAngles.y = 180; transform.Translate(Vector3.forward * speed);
X.cor.R (Prologue)
|
|
| |
Greexon | Дата: Среда, 16 Июля 2014, 08:33 | Сообщение # 12 |
почетный гость
Сейчас нет на сайте
| Assets/Scripts/ButtonRight.cs(15,50): error CS1612: Cannot modify a value type return value of `UnityEngine.Transform.eulerAngles'. Consider storing the value in a temporary variable Выдаёт эту ошибку при коде:Код using UnityEngine; using System.Collections;
public class ButtonRight : MonoBehaviour { public GameObject Player; public Texture2D Start; public Texture2D Pressed;
void Update(){
foreach (Touch touch in Input.touches) { if(this.guiTexture.HitTest(touch.position)){ this.guiTexture.texture=Pressed; Player.transform.Translate(new Vector2(0.1f, 0.0f)); Player.transform.eulerAngles.y = 180; } if(touch.phase == TouchPhase.Ended){ this.guiTexture.texture=Start; } } } } Добавлено (16.07.2014, 08:33) --------------------------------------------- Решил проблему при помощи:transform.rotation = Quaternion.Euler(Vector3)
|
|
| |
Левша | Дата: Среда, 16 Июля 2014, 18:20 | Сообщение # 13 |
почти ветеран
Сейчас нет на сайте
| Цитата Левша ( ) transform.eulerAngles.y = 180; На С# так нельзя писать, это для Js. На С# пишется: transform.eulerAngles = new Vector3(transform.eulerAngles.x, 180, transform.eulerAngles.z);
X.cor.R (Prologue)
Сообщение отредактировал Левша - Среда, 16 Июля 2014, 22:11 |
|
| |
Greexon | Дата: Среда, 16 Июля 2014, 19:16 | Сообщение # 14 |
почетный гость
Сейчас нет на сайте
| Просто я выше писал что мне нужен C#, но спасибо что объяснили
|
|
| |
lentinant | Дата: Среда, 16 Июля 2014, 22:43 | Сообщение # 15 |
ленивый программист
Сейчас нет на сайте
| Цитата Левша ( ) transform.eulerAngles.y = 180; И каким образом это повернет персонажа? Я бы понял, если бы там было +=. Впрочем, используются кнопки, и для другой кнопки использовать приравнивание к 0, то да, сработает.
Когда-то тут будут ссылки на крутые проекты. Или нет.
|
|
| |