forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Общие вопросы (http://forum.boolean.name/forumdisplay.php?f=166)
-   -   Вопросы от новичка (http://forum.boolean.name/showthread.php?t=15809)

cahekp 06.07.2012 15:49

Ответ: Вопросы от новичка
 
Черт! На пять минут не успел! :)

FREE MAN 06.07.2012 22:09

Ответ: Вопросы от новичка
 
Подскажите методы оптимизации для ботов, как их лучше создавать, типа инстенсинга, копии или есть тут другие способы их создания. вобщем суть такова мене надо чтобы на экране спокойно могло быть 20-25 ботов.

WISHMASTER35 06.07.2012 22:34

Ответ: Вопросы от новичка
 
Phyton, по-моему способ создания никак не связан со скоростью обработки твоих ботов в игре. Если конечно эти 20 ботов не будет каждую секунду умирать и создаваться заново. Респавни убитого бота и не создавай нового. Хотя не думаю, что создать нового будет так медленно.

Не в тему, но ни у кого нет идей как сделать мягкое приземлении диаманта при падении? Т.е. чтобы он сначала немного проваливался в другой диамант, а потом как бы всплывал.

Сейчас у меня метод падения диаманта выглядит так
Код:

        public void Fall(float height) {
                speed += 18*Time.deltaTime;
                speed = Mathf.Clamp(speed, 4, 100);
               
                Vector2 oldPosition = position;
                position.y -= speed*Time.deltaTime;
               
                if(position.y < height) {
                        position.y = height;
                }
                speed = (oldPosition.y - position.y)/Time.deltaTime;
               
                if( Mathf.Abs(speed) <= float.Epsilon ) speed = 0;
        }

Как не пробовал сделать все равно какая-то фигня.

is.SarCasm 06.07.2012 22:51

Ответ: Вопросы от новичка
 
Phyton, Я написал ботов для своего шутера (поиск пути, атака, выбор оружия, распределение приоритетов,смерть, прыжки, поиск ближайших врагов\бонусов). 128 ботов в виде капсул воюют между собой без падения фпс. Так что, мне кажется, что магии оптимизации тут не надо.

FREE MAN 06.07.2012 23:23

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от is.SarCasm (Сообщение 232344)
Phyton, Я написал ботов для своего шутера (поиск пути, атака, выбор оружия, распределение приоритетов,смерть, прыжки, поиск ближайших врагов\бонусов). 128 ботов в виде капсул воюют между собой без падения фпс. Так что, мне кажется, что магии оптимизации тут не надо.

капсулы это капсулы, речь идёт об анимированых моделях...

pax 06.07.2012 23:36

Ответ: Вопросы от новичка
 
Если сейчас тормозит, ждите Unity 4.0, там будет инстансинг анимированных мешей и возможность вмешиваться в пайплайн их рендеринга вроде. Правда не заню DirectX 11 это будет или на девятом буедт работать...

is.SarCasm 07.07.2012 10:43

Ответ: Вопросы от новичка
 
Цитата:

капсулы это капсулы, речь идёт об анимированых моделях...
Тогда тебе это не подвластно...пока.

cahekp 07.07.2012 13:18

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от Phyton (Сообщение 232349)
капсулы это капсулы, речь идёт об анимированых моделях...

Капсулы - это коллайдер. Анимированная модель - это меш. Две разные штуки для двух разных целей. Одна для физики, другая - для визуализации. Не понимаю, почему ты не хочешь использовать их вместе. Для ботов - это более, чем достаточно.

Или ты хочешь, чтобы физ.модель работала точь-в-точь как настоящая? Чтоб каждый треугольник на анимированной модели взаимодействовал с окружающим миром? Ну... Такого не бывает. :)

FREE MAN 07.07.2012 13:50

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от cahekp (Сообщение 232372)
Капсулы - это коллайдер. Анимированная модель - это меш. Две разные штуки для двух разных целей. Одна для физики, другая - для визуализации. Не понимаю, почему ты не хочешь использовать их вместе. Для ботов - это более, чем достаточно.

Или ты хочешь, чтобы физ.модель работала точь-в-точь как настоящая? Чтоб каждый треугольник на анимированной модели взаимодействовал с окружающим миром? Ну... Такого не бывает. :)

дело в том что я поставил 8 анимированных моделей в сцену и фпс резко падает, а что будет когда они начнут стрелять, и выполнять разные действия...

is.SarCasm 07.07.2012 14:03

Ответ: Вопросы от новичка
 
Дело в моделях. От того что они будут выполнять разные действия фпс скорее всего не изменится( так как там нагрузка на видеокарту, а тут на проц). Может у тебя там по 2лимона полигонов? :)

cahekp 07.07.2012 14:04

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от Phyton (Сообщение 232374)
дело в том что я поставил 8 анимированных моделей в сцену и фпс резко падает, а что будет когда они начнут стрелять, и выполнять разные действия...

Так у тебя проблема не с оптимизацией ботов как таковых, а просто с анимированными моделями. Тьфу ты. Путаешь нас тут. )

Сколько треугольников содержит каждая из моделей? И сколько костей имеет каждая из них? Такое ощущение, что они у тебя очень тяжеловесные.

pie 09.07.2012 15:13

Ответ: Вопросы от новичка
 
По поводу миксования анимаций. Этот вопрос уже рассматривался мной. Раньше работало. Теперь не работает. Вот код:
PHP код:

using UnityEngine;
using System.Collections;

public class 
WeaponAnimation MonoBehaviour {
    
    public 
AnimationClip akIdle;
    public 
Transform torce;
    
    public 
void Start () {
        
animation[akIdle.name].wrapMode WrapMode.Clamp;
        
animation[akIdle.name].layer 1;
        
animation.Stop();
        
animation[akIdle.name].AddMixingTransform(torce);
    }
    
    public 
void Update () {
        
animation.CrossFade(akIdle.name);
    }


В чем может быть причина? У меня 4 кости спины (spine, spine1, spine2, spine4). Я проверял каждую - безрезультатно.
PS: Анимация хотьбы, idle сделана с помощью locomotion.

WISHMASTER35 09.07.2012 18:11

Ответ: Вопросы от новичка
 
Сделал, чтобы мои диаманты мягко приземлялись) https://dl.dropbox.com/u/55489242/Di...WebPlayer.html Нормально выглядит?
После того как черт знает сколько поломал с этим голову решил тупо в корутине за несколько кадров смещать диамант сначала вниз, а потом вверх на исходную позицию)
Код:

public void Fall(float height) {
                float oldSpeed = speed;
                speed += 18*Time.deltaTime;
                speed = Mathf.Clamp(speed, 4, 12);
               
                Vector2 oldPosition = position;
                position.y -= speed*Time.deltaTime;
               
                position.y = Mathf.Max(position.y, height);
                speed = (oldPosition.y - position.y)/Time.deltaTime;
               
                if( Mathf.Abs(speed) <= float.Epsilon ) speed = 0;
               
                if(!playingAnimation && speed < oldSpeed) {
                        playingAnimation = true;
                        float k = (oldSpeed-4)/(12-4);
                        StartCoroutine( LandingAnimation(oldSpeed, k) );
                }
        }
       
        private IEnumerator LandingAnimation(float speed, float k) {
                speed *= 0.4f;
                k *= 0.3f;
                while(offset.y > -k) {
                        offset.y -= speed*Time.deltaTime;
                        if(offset.y < -k) offset.y = -k;
                        yield return null;
                }
               
                while(offset.y < 0) {
                        offset.y += speed*Time.deltaTime;
                        if(offset.y > 0) offset.y = 0;
                        yield return null;
                }
               
                playingAnimation = false;
        }


pie 09.07.2012 20:27

Ответ: Вопросы от новичка
 
Вложений: 2
Так. Вот что стало известно. Анимация по сути работает, но мне кажется что она распространяется только на ту кость которую я указал, а не на всю ветвь. Как можно сделать чтобы использовалась ветвь костей?

Код переписал:

PHP код:

using UnityEngine;
using System.Collections;

public class 
WeaponAnimation MonoBehaviour {
    
    public 
AnimationClip idle;
    public 
Transform spine;
    
    private 
void SetupGunAnimation (AnimationClip animationClip) {
        
AnimationState a animation[animationClip.name];
        
a.wrapMode WrapMode.Loop;
        
a.layer 1;
        
a.AddMixingTransform(spine);
    }
    
    public 
void Start () {
        
SetupGunAnimation(idle);
        
animation.CrossFade(idle.name);
    }
    
    public 
void Update () {
        
    }



pie 10.07.2012 14:09

Ответ: Вопросы от новичка
 
Есть какие нибудь соображения?

pie 11.07.2012 13:07

Ответ: Вопросы от новичка
 
Вложений: 1
Снова всем привет! С вышеописанной проблемой справился. Возникла новая. На этот раз с тенями. Подробности на скриншоте.

cahekp 11.07.2012 14:07

Ответ: Вопросы от новичка
 
Попробуй сделать поменьше Bias в настройках тени: http://docs.unity3d.com/Documentatio...ass-Light.html

pie 11.07.2012 14:13

Ответ: Вопросы от новичка
 
Исправил! Уменьшил Bias с 0,05 до 0,001. Жаль что нету размытия тени по краям у SpotLight.
cahekp, спасибо)))

WISHMASTER35 11.07.2012 14:28

Ответ: Вопросы от новичка
 
Скажите, я правильно понял про шейдеры.
Если в Pass есть тег "LightMode" = "Vertex", то этот Pass будет выполняться только для вершин, е не для каждого пикселя?
И что значат VertexLM и VertexLMRGBM?

Вот собственно весь шейдер
Код:

Shader "Map/Map" {
        Properties {
                _MainTex ("Base (RGB)", 2D) = "white" {}
        }
        SubShader {
                Tags { "RenderType"="Opaque" "LightMode" = "Vertex" }
                LOD 80
               
                // Non-lightmapped
                Pass {
                        Tags { "LightMode" = "Vertex" }
               
                        Material {
                                Diffuse (1,1,1,1)
                                Ambient (1,1,1,1)
                        }
                        Lighting On
                        SetTexture [_MainTex] {
                                Combine texture * primary DOUBLE, texture * primary
                        }
                }
        }
        FallBack "Unlit/Texture"
}

К нему еще надо как-то добавить VertexColor.

DeKon 12.07.2012 19:50

Ответ: Вопросы от новичка
 
Здравствуйте. Мне нужно что бы объект в определенной последовательности( в данном случаю рандомно) загружал текстуры из определенного места. Есть два вопроса:
1) Надо писать скрипт для самого объекта или надо делать специальный шейдер?
2) Собственно как это сделать?

pie 12.07.2012 19:55

Ответ: Вопросы от новичка
 
Скорее не вопрос, а набросок. Жаль на форуме "Проекты на Unity" нету темы "Скриншоты и Web версии набросков".
Играть
R - рестарт сцены.

PS: Меня смущает то что трупы как живые.))))

pie 12.07.2012 20:00

Ответ: Вопросы от новичка
 
DeKon, Я делал скины для зомби именно так (Рандомно).

PHP код:

using UnityEngine;
using System.Collections;

public class 
RandomTexture MonoBehaviour {
    
    public 
Texture[] textures;
    
    public 
void Start () {
        
transform.renderer.material.mainTexture textures[Random.Range(0textures.Length)];
    }


Только как я знаю это не лучший метод (может даже я не прав) так как в этом случает текстура будет занимать дополнительную память из-за того что будет хранить копию.

pax 12.07.2012 23:11

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от pie (Сообщение 232812)
Скорее не вопрос, а набросок. Жаль на форуме "Проекты на Unity" нету темы "Скриншоты и Web версии набросков".
Играть
R - рестарт сцены.

PS: Меня смущает то что трупы как живые.))))

задай размеры аниммешей по больше, а то пропадают ноги/руки

WISHMASTER35 13.07.2012 00:05

Ответ: Вопросы от новичка
 
Сделал блеск через Cubemap http://upwap.ru/2608217
Но почему на некоторых диамантах этот блеск так резко обрывается?

Есть еще какие-нибудь шейдеры типа этого? http://www.rozengain.com/blog/2012/0...vertex-shader/
Хочу сделать что-то типа анимации желе)
Тот шейдер я переписал на юнити, но какой-то он тежелый и похоже не правильно работает т.к. при динамическом батчинге центр модели расположен не в центре модели, а в центре всех сбатчиных моделей.

ABTOMAT 13.07.2012 23:38

Ответ: Вопросы от новичка
 
В этой теме можно задавать вопросы вперемешку со всеми или надо создать отдельно тему для вопроса?

WISHMASTER35 14.07.2012 00:00

Ответ: Вопросы от новичка
 
Я никогда не любил создавать тем ради одного или пары постов. А что?

ABTOMAT 14.07.2012 00:07

Ответ: Вопросы от новичка
 
ОК тогда спрошу здесь:
Скрипт можно привязать только к объекту.
Когда я хочу сгенерировать уровень из вершин и полигонов с нуля, мне пришлось создать всё равно EmptyObject единственно чтобы привязать скрипт к нему.
Иначе никак или я что-то неправильно делаю?

pax 14.07.2012 00:15

Ответ: Вопросы от новичка
 
Иначе никак нельзя, принцип работы сцен - это компоненты, один компонент может выступать главным для инициализации сцены если тебе это необходимо. Компоненты без объектов сцены не "живут". Но в остальном компонентная модель делает объекты сцены более независимыми и позволяет "конструировать" уровни из "блоков".

PS: Ты делаешь все правильно)

WISHMASTER35 14.07.2012 00:18

Ответ: Вопросы от новичка
 
Все равно тебе сгенерированный уровень придется хранить на каком-то GameObject'е. На этот объект и повесь свой скрипт генерации.
Вообщем чтобы скрипт выполнялся его надо повесить на GameObject, который в сцене.

ABTOMAT 14.07.2012 01:13

Ответ: Вопросы от новичка
 
Ок, т.е. это будет такой себе Главный Объект Сцены, где будет весь основной инициализирующий код: генерация мира, рассование врагов по уровню, установка HP и патронов игрока и т.д.?

Второй вопрос: я пока что суваю меш вот сюда в Главном объекте сцены (про который выше говорил):

GetComponent<MeshFilter>().mesh = new Mesh();
// блаблаблагенерация

Мне кааца это не совсем верно. Например совершенно точно что мешей у меня будет несколько. Нужно ли создавать другие GameObject'ы для этого?

Третий вопрос: материал можно назначить только GameObject'у? Когда у меня к примеру 2 текстуры (материала) листва и кора, и я хочу сделать дерево, нужно ли мне делать 2 разных GameObject'а: крона и ствол, или же можно их как-то сунуть в один?

pax 14.07.2012 01:19

Ответ: Вопросы от новичка
 
1. Да
2. Для разных объектов можно создавать свои GO со своими Mesh для MeshFilter. Но если все меши не подвижны, то можно создавать субмеши в одном меше, заодно назначая каждому субмешу свой материал через массив renderer.materials.
3. Создаешь у меша два набора треугольников (массив вершин то будет один), каждому набору треугольников можно назначить свой материал через массив renderer.materials как я уже написал выше. Тогда можно обойтись одним объектом.

Nuprahtor 14.07.2012 01:19

Ответ: Вопросы от новичка
 
Unity не Blitz3d, не надо брезговать редактором сцен и использованием префабов.

pax 14.07.2012 01:21

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от Nuprahtor (Сообщение 232939)
Unity не Blitz3d, не надо брезговать редактором сцен и использованием префабов.

Кому как проще, пусть работает как ему привычнее, быстрее игру напишут ;)
По ходу научится подходу, предлагаемому редактором.

ABTOMAT 14.07.2012 01:23

Ответ: Вопросы от новичка
 
А я брезгую, да, я брюзгливый такой. У меня бугурт с них. И не всё можно сделать префабами. То, что я сейчас делаю, префабами можно сделать с трудом. Хотя полностью я от них и не отказывался.

WISHMASTER35 14.07.2012 16:04

Ответ: Вопросы от новичка
 
Здесь http://docs.unity3d.com/Documentatio...ceShaders.html внизу есть описание структуры Input для шейдера.
Вот не пойму почему там цвет написан как "float4 with COLOR" а в реальном шейдере его надо прописывать как "float4 color : COLOR"?
Как из первого можно догадаться как писать второе? Или я что-то не так понял?

pax 15.07.2012 10:53

Ответ: Вопросы от новичка
 
там предложение, а не синтаксис
Цитата:

float4 with COLOR semantic - will contain interpolated per-vertex color.
гуглишь "cg COLOR semantic" по первой ссылке видишь пример, в чем проблемы?

Radnk 18.07.2012 08:49

Ответ: Пожелания на новые уроки
 
Мне вот интересно, можно ли анимировать GUITexture? К примеру, чтобы текстура двигалась с левого угла в правый и с правого в левый и т.д.

pax 18.07.2012 09:12

Ответ: Вопросы от новичка
 
Можно двумя способами: изменять координату x объекта текстуры с 0 до 1 и обратно; изменять Pixel Inset.

Radnk 18.07.2012 09:47

Ответ: Вопросы от новичка
 
Ну вот и создайте урок по этому поводу. с примерами и т.д., как вы умеете :super:

pax 18.07.2012 10:31

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от Radnk (Сообщение 233182)
Ну вот и создайте урок по этому поводу. с примерами и т.д., как вы умеете :super:

Слишком узкий урок получится, будет мало кому интересен.

Radnk 18.07.2012 21:33

Ответ: Вопросы от новичка
 
А можно ли создать анимацию исключительно с помощью скрипта? Например нарисовать полоску и добавить ей свечение, то есть чтобы она светилась. Или это лучше делать в отдельных программах ?

pax 18.07.2012 21:56

Ответ: Вопросы от новичка
 
Что значит свечение в твоем понимании? примеры приведи. Обычно анимацию чего-либо сложного делают последовательным изменением кадров, с заранее нарисованным эффектом. Сложный интерфейс на основе флеша например стоит много денег (http://gameware.autodesk.com/scaleform).

Radnk 18.07.2012 22:06

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от pax (Сообщение 233258)
Что значит свечение в твоем понимании? примеры приведи. Обычно анимацию чего-либо сложного делают последовательным изменением кадров, с заранее нарисованным эффектом. Сложный интерфейс на основе флеша например стоит много денег (http://gameware.autodesk.com/scaleform).

Ну денег у меня нет и интерфейс мне сложный не нужен :)

Просто хочу понять все тонкости. Вот к примеру: http://www.youtube.com/watch?v=sLMHk...layer_embedded. В низу экрана есть полоса, которая прокручивается. Как это было сделано? С помощью скрипта или еще как то?

pax 18.07.2012 23:34

Ответ: Вопросы от новичка
 
Интерполяция между начальным и конечным положением.
http://docs.unity3d.com/Documentatio...tor3.Lerp.html вот тут два примера есть. Скрипт вешаешь на 3d объект с плейном с текстурой, и создаешь вспомогательные объекты - точки откуда и куда (первый пример), или куда (второй пример). Второй пример - это следование за объектом.

Radnk 19.07.2012 00:24

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от pax (Сообщение 233288)
Интерполяция между начальным и конечным положением.
http://docs.unity3d.com/Documentatio...tor3.Lerp.html вот тут два примера есть. Скрипт вешаешь на 3d объект с плейном с текстурой, и создаешь вспомогательные объекты - точки откуда и куда (первый пример), или куда (второй пример). Второй пример - это следование за объектом.

Это то что мне нужно :super:

Вот только можно ли это сделать с GUI текстурой ? Скажем, чтобы текстура с одного края монитора передвигалась на другой потом обратно и т.д. Ну и желательно чтобы при изменении разрешения экрана текстура была прижата, скажем к низу с отступом в 5 пикселей от бортов.

нУ и ЗаДаЧкА бЛиН :-D

cahekp 19.07.2012 01:39

Ответ: Вопросы от новичка
 
Блин, Radnk, ну почему нельзя-то? Ну пойми ты, что GUI текстура - это обычный GameObject с компонентом GUI Texture. Ни больше, ни меньше.
Позиционирование GUI Texture на экране происходит в компоненте Transform. Конкретно - в полях Position: x и y. Координаты нормированные (от 0 до 1).

Если ты хочешь, чтобы GUI Texture ходила туда - сюда по экрану, то это можно сделать двумя способами:
1) Сделать эту анимацию прямо в Unity с помощью окна Animation
2) Написать скрипт, который будет таскать GameObject туда-сюда.

Вот пример такого скрипта:
Код:

private float speed = 1;
void Update() {
        transform.Translate(speed * Time.deltaTime, 0, 0);
        if (transform.position.x >= 1.0F || transform.position.x <= 0) speed = -speed;
}

Вот и всё.

Radnk 20.07.2012 09:43

Ответ: Вопросы от новичка
 
cahekp спасибо, для моих простеньких целей первый вариант в самый раз. :super:

вот не однократно читал про анимацию в юнити, а как коснулось дело забыл про этот вариант. :-D

Radnk 20.07.2012 09:45

Ответ: Вопросы от новичка
 
pax, не планируются ли прикрепляться еще ветки к этому разделу ? :)

pax 20.07.2012 10:13

Ответ: Вопросы от новичка
 
Есть предложения?

Radnk 21.07.2012 10:30

Ответ: Вопросы от новичка
 
Может быть с "FAQ и уроки" сделать раздел "Уроки от Boolean.Name" и сделать еще один "Уроки с интернета", а тему "Фак по Юнити" закрепить на эти два раздела. В первый можно публиковать уникальные уроки, а во второй видео уроки с интернета и т.д. Чтобы не было проблем с авторами уроков - публиковать ссылку на их, если она есть в описании к видео на YouTube. А если нет, то можно публиковать без ссылки. С наполнением второго отдела могу помочь.

Просьба строго не судить - просто предложение.

Radnk 21.07.2012 10:31

Ответ: Вопросы от новичка
 
Блин видео на форуме нельзя публиковать :''(( облом :dontknow:

pax 21.07.2012 11:55

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от Radnk (Сообщение 233635)
Блин видео на форуме нельзя публиковать :''(( облом :dontknow:

загрузи на тытрубу и дай ссылку, в чем проблема?

Radnk 21.07.2012 12:00

Ответ: Вопросы от новичка
 
Если бы можно было вставлять на форум было бы гораздо проще.

pie 21.07.2012 15:17

Ответ: Вопросы от новичка
 
Плавный переход между анимациями. В некоторых движках есть реализация плавного перехода от одной анимации в другую. Есть ли такая возможность в юнити? И если да то как она реализуется.

pax 21.07.2012 15:22

Ответ: Вопросы от новичка
 
Ответ тут: Animation.CrossFade

WISHMASTER35 21.07.2012 15:25

Ответ: Вопросы от новичка
 
как думаете такую сетку как тут www.explorethesolarsystem.com/Media.html можно нарисовать шейдером? или текстурой только?

WISHMASTER35 21.07.2012 15:35

Ответ: Вопросы от новичка
 
pax, гуглить всегда можно, но почему бы сразу в документации не написать синтаксис? конечно это тема больше по cg, но все же... хотя сейчас мне гуглить очень сложно ибо в инете с мобилы, а инет ух как тормозит.
кстате сурфейс шейдер это от юнити или cg?

pax 21.07.2012 15:48

Ответ: Вопросы от новичка
 
Цитата:

как думаете такую сетку как тут www.explorethesolarsystem.com/Media.html можно нарисовать шейдером? или текстурой только?
Хз на счет шейдера... Но вероятно можно

Цитата:

кстате сурфейс шейдер это от юнити или cg?
Это юнитек придумал шейдеры, которые работают с обоими видами освещения - прямым и deffered.

pie 24.07.2012 00:40

Ответ: Вопросы от новичка
 
Всем привет! В WebPlayer почему то отсутствует динамическая тень игрока. ССЫЛКА

pax 24.07.2012 06:59

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от pie (Сообщение 234017)
Всем привет! В WebPlayer почему то отсутствует динамическая тень игрока. ССЫЛКА

Выбери для Web Player'а настройки качества по умолчанию другие, с тенями. Потом делай билд.
Edit=>Project Settings=>Quality

Hurrit 25.07.2012 05:13

Ответ: Вопросы от новичка
 
Такой вот вопрос: у меня есть лист GameObject'ов под названием boxes. И во время Update() я бы хотел получать количество столкновений у последнего объекта из boxes. Что-то вроде:
Код:

void Update()
{
  int collisionNumber = boxes[boxes.Count - 1].CountCollisions;
}

Заранее спасибо.

pax 25.07.2012 07:25

Ответ: Вопросы от новичка
 
Я бы попробовал посчитать как-то так:

PHP код:

public class BoxMonoBehaviour
{

   public 
int CountCollisions =0;

   
void Start()
   {
       
CountCollisions 0;
   }

   
void OnCollisionEnter(Collision collision
   {
       
CountCollisions++;
   }

   
void OnCollisionExit(Collision collisionInfo
   {
      
CountCollisions--;
   }



WISHMASTER35 26.07.2012 00:02

Ответ: Вопросы от новичка
 
сместить позицию в шейдере в сторону нормали из normalmap никак нельзя? хотел сделать волны так, но не подучается.
кстате, есть более менее современный шейдер воды для инди? в bootcamp шейдер старый. анимация скриптом сделана, не _Time. да и без сурфейс шейдера он не очень для понимания.

pax 26.07.2012 07:11

Ответ: Вопросы от новичка
 
Двигать позицию можно только у вершин, зачем там карта нормалей в вершинном шейдере?
Пример ищи тут с заголовком "Normal Extrusion with Vertex Modifier".

Геометрические шейдеры появятся только в Unity 4.0 для DirectX 11.


Часовой пояс GMT +4, время: 17:50.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot