Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Unity

Unity Мультиплатформенный инструмент для разработки игр

Ответ
 
Опции темы
Старый 21.01.2011, 20:39   #331
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Частицы быстрее, если тебе надо сотню и больше билбоардов. Управляй созданием частиц в ручную в эмиттере, и сможешь отрисовать все частицы за один draw call.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Evgen (21.01.2011)
Старый 21.01.2011, 21:30   #332
Evgen
Разработчик
 
Аватар для Evgen
 
Регистрация: 12.01.2011
Адрес: Moscow
Сообщений: 419
Написано 68 полезных сообщений
(для 100 пользователей)
Ответ: Фак по Юнити.

Использую particle emitter, со скоростью все Ок! 16000 партиклов 150FPS.

А как через код установить текстуру particleEmitter?
И почему я создаю желтый партикл Color.yellow, а на экране отображается розовый?

П.С. Если кому интересно небольшой рабочий тест.
дополнительно к объекту нужно прикрутить Particle Renderer и Elipsoid Particle Emitter

using UnityEngine;
using System.Collections;

public class Test : MonoBehaviour {

	// Use this for initialization
	void Start () {
		particleEmitter.useWorldSpace = true;
	}
	
	// Update is called once per frame
	void Update () {
		float x,y,z;
		for(int i=0; i<50; i++){	
			x=Random.Range(50, 1024-50);
			y=Random.Range(-10, 50);
			z=Random.Range(50, 1024-50);
			particleEmitter.Emit(new Vector3(x,y,z), Vector3.up, 3.0f, 2f, Color.yellow);
		}	
		print(particleEmitter.particleCount);
	}
	
}
(Offline)
 
Ответить с цитированием
Старый 21.01.2011, 21:35   #333
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Используй явное создание частиц
http://unity3d.com/support/documenta...particles.html
а материал определяет ParticleRenderer
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Evgen (21.01.2011)
Старый 21.01.2011, 21:53   #334
Evgen
Разработчик
 
Аватар для Evgen
 
Регистрация: 12.01.2011
Адрес: Moscow
Сообщений: 419
Написано 68 полезных сообщений
(для 100 пользователей)
Ответ: Фак по Юнити.

Забыл что к камере прикрутил, Particle Renderer и Elipsoid Particle Emitter. в свойствах Render можно поставить материал.

Теперь все работает.
(Offline)
 
Ответить с цитированием
Старый 25.01.2011, 20:03   #335
Nuprahtor
Элита
 
Аватар для Nuprahtor
 
Регистрация: 26.07.2008
Сообщений: 1,972
Написано 1,095 полезных сообщений
(для 3,923 пользователей)
Ответ: Фак по Юнити.

Возникла нехорошая проблема.
Персонаж игрока условно - куб с Box Collider`ом. Враги тоже.
Их я двигаю transform.Translate`ом и они не реагируют на столкновения вообще никак.
У меня возникло подозрение, что transform.Translate не учитывает физику, и мне стало от этого грустно.
Какой командой стоит передвигать персонажей, или какие компоненты стоит добавить (пробовал Rigidbody, однако безрезультатно)
(Offline)
 
Ответить с цитированием
Старый 25.01.2011, 21:12   #336
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Если все объекты с коллайдерами и двигаются, то им необходимо добавить RigidBody и его переключить в режим IsKinematic и передвигать их надо в FixedUpdate.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Nuprahtor (25.01.2011)
Старый 25.01.2011, 21:27   #337
Nuprahtor
Элита
 
Аватар для Nuprahtor
 
Регистрация: 26.07.2008
Сообщений: 1,972
Написано 1,095 полезных сообщений
(для 3,923 пользователей)
Ответ: Фак по Юнити.

Хм, не помогло, ригидбади установлены, пробовал со всеми комбинациями галочек...
(Offline)
 
Ответить с цитированием
Старый 25.01.2011, 21:35   #338
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Коллайдеры случаем не в режиме IsTrigger? В каком слое коллайдеры находятся? В настройках физики - эти слои между собой могут сталкиваться?
(Offline)
 
Ответить с цитированием
Старый 25.01.2011, 21:37   #339
Nuprahtor
Элита
 
Аватар для Nuprahtor
 
Регистрация: 26.07.2008
Сообщений: 1,972
Написано 1,095 полезных сообщений
(для 3,923 пользователей)
Ответ: Фак по Юнити.

Могут сталкиваться, коллайдеры не триггеры
(Offline)
 
Ответить с цитированием
Старый 25.01.2011, 21:38   #340
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Тогда не могу предполагаать... если только transform который двигает объект не на том же объекте что и коллайдер...
(Offline)
 
Ответить с цитированием
Старый 25.01.2011, 21:45   #341
Nuprahtor
Элита
 
Аватар для Nuprahtor
 
Регистрация: 26.07.2008
Сообщений: 1,972
Написано 1,095 полезных сообщений
(для 3,923 пользователей)
Ответ: Фак по Юнити.

Нет, трансформ там же находится
Вот сцена, если есть возможность посмотреть
Вложения
Тип файла: rar mist_bust.rar (126.1 Кб, 335 просмотров)
(Offline)
 
Ответить с цитированием
Старый 25.01.2011, 21:58   #342
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

Посмотрел, похоже чтобы сталкивались наверное надо двигать объекты физикой. Либо использовать вместо BoxCollider - CharacterController. Либо вручную обрабатывать события он CollisionEnter.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Nuprahtor (25.01.2011)
Старый 17.02.2011, 15:29   #343
Taugeshtu
scientist.alien
 
Аватар для Taugeshtu
 
Регистрация: 12.02.2007
Сообщений: 2,098
Написано 1,030 полезных сообщений
(для 2,593 пользователей)
Ответ: Фак по Юнити.

Возникла нехорошая проблема.
Персонаж игрока условно - куб с Box Collider`ом. Враги тоже.
Их я двигаю transform.Translate`ом и они не реагируют на столкновения вообще никак.
У меня возникло подозрение, что transform.Translate не учитывает физику, и мне стало от этого грустно.
Какой командой стоит передвигать персонажей, или какие компоненты стоит добавить (пробовал Rigidbody, однако безрезультатно)
боролся кстати с этим недавно... решение получилось костыльным)
Rigidbody, в Update() включать IsKinematic, двигать transform.position как хочется, выключать IsKinematic, обнулять rigidbody.velocity и angularVelocity.
__________________
Public service announcement: вы можете заблокировать отображение сообщений определённого пользователя, добавив его ник в список игнорируемых.
Tau lab.
We LOVE you. We MADE you.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Nuprahtor (17.02.2011)
Старый 01.03.2011, 22:08   #344
Andvrok
Бывалый
 
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений
(для 995 пользователей)
Ответ: Фак по Юнити.

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
    public GameObject respawnPrefab;
    public GameObject[] respawns = GameObject.FindGameObjectsWithTag("Respawn");
    void Awake() {
        foreach (GameObject respawn in respawns) {
            Instantiate(respawnPrefab, respawn.transform.position, respawn.transform.rotation);
        }
    }
}
Запускаю, но в массиве пусто
Префаб назначен, скрипт в сцене размещен, точки респавна присутствуют, все теги выставлены.

И второй вопрос: как сделать триггер на партиклы? Например, стоишь в огне и у тебя здоровье отнимается.
(Offline)
 
Ответить с цитированием
Старый 02.03.2011, 01:48   #345
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

делай так
using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
    public GameObject respawnPrefab;
    public GameObject[] respawns;
    void Awake() {
        respawns = GameObject.FindGameObjectsWithTag("Respawn");
        foreach (GameObject respawn in respawns) {
            Instantiate(respawnPrefab, respawn.transform.position, respawn.transform.rotation);
        }
    }
}
по второму вопросу - используй MonoBehaviour.OnTriggerStay
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Andvrok (02.03.2011)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com