Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 07.04.2010, 18:32
Котяра вне форума Посмотреть профиль Отправить личное сообщение для Котяра Посетить домашнюю страницу Котяра Найти все сообщения от Котяра
  № 11  
Ответить с цитированием
Котяра
буду краток
 
Аватар для Котяра

модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
Отправить сообщение для Котяра с помощью ICQ Отправить сообщение для Котяра с помощью Skype™
Sprite2D есть во всех 3D движках по-моему..
вот ещё например:
http://away3d.com/livedocs/356/away3.../Sprite2D.html
http://www.nulldesign.de/nd3d/docs/d.../Sprite3D.html (вроде там есть параметр "не искажать" - кстати очень приятный движок: минималистичный, но напильником под свои задачи хорошо точится и очень шустрый)
и пр..
сэнди хуже чем five или away или альтернатива или папервижн - он скорее для обучения чем для реальной работы.
__________________
Отряд Котовскага


Последний раз редактировалось Котяра; 07.04.2010 в 18:37.
Старый 07.04.2010, 20:28
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 12  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,600
Записей в блоге: 17
Я уже на away3D остановился для этой задачи, спасибо. )
Сейчас почитаю про nulldesignовский движок.

Добавлено через 16 минут
Хм, очень милый и резвый движок =)
Сейчас попробую с ним подружиться. Спасибо большое за ссылку)

Добавлено через 40 минут
Что то не могу найти свойства "не искажать"...

Старый 08.04.2010, 10:03
Котяра вне форума Посмотреть профиль Отправить личное сообщение для Котяра Посетить домашнюю страницу Котяра Найти все сообщения от Котяра
  № 13  
Ответить с цитированием
Котяра
буду краток
 
Аватар для Котяра

модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
Отправить сообщение для Котяра с помощью ICQ Отправить сообщение для Котяра с помощью Skype™
посмотри в примерах как сделаны хинты.
кстати для партиклей есть хороший двиг с модулями интеграции для nd3d, pv3d и ZedBox
ЗЫ: а эта демка - чем-то на твою похожа)
код до безобразия прост)
Код AS3:
package examples  
{
	import flash.display.BitmapData;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.geom.ColorTransform;
 
	import de.nulldesign.nd3d.material.BitmapMaterial;
	import de.nulldesign.nd3d.geom.Vertex;
	import de.nulldesign.nd3d.material.Material;
	import de.nulldesign.nd3d.objects.Mesh;
	import de.nulldesign.nd3d.objects.PointCamera;
	import de.nulldesign.nd3d.objects.Sphere;
	import de.nulldesign.nd3d.objects.Sprite3D;
	import de.nulldesign.nd3d.renderer.Renderer;	
 
	public class AdditiveGalaxy extends Sprite 
	{
 
		private var cam:PointCamera;
		private var renderer:Renderer;
		private var renderList:Array;
 
		[Embed("assets/particle2.png")]
		private var ParticleTexture:Class;	
 
		[Embed("assets/space4.jpg")]
		private var StarFieldTexture:Class;	
 
		private var numParticles:uint = 400;
		private var particleMat:BitmapMaterial;
 
		public function AdditiveGalaxy() 
		{
 
			var drawStage:Sprite = new Sprite();
			addChild(drawStage);
 
			renderer = new Renderer(drawStage);
			renderer.additiveMode = true;
			cam = new PointCamera(600, 400);
			//cam.z = -100;
			//cam.y = -100;
			cam.angleX = 0.5;
			renderList = [];
 
			var tex:BitmapData = new StarFieldTexture().bitmapData;
			var tmpMat:BitmapMaterial = new BitmapMaterial(tex, true);
			var m:Mesh = new Sphere(10, 3000, tmpMat);
			m.flipNormals();
			renderList.push(m);
 
			for(var i:uint = 0;i < numParticles; i++) 
			{
				tex = new ParticleTexture().bitmapData;
				tex.colorTransform(tex.rect, new ColorTransform(Math.random(), Math.random(), 1, 1));
				particleMat = new BitmapMaterial(tex, false, false, false, true);				
 
				var s:Sprite3D = new Sprite3D(particleMat);
				//s.xPos = -100 + Math.random() * 200;
				//s.yPos = -200 + Math.random() * 400;
				s.zPos = 100 + Math.random() * 100;
				s.direction = new Vertex(1 + Math.random() * 2, 0, 0);
				s.scale(20, 20, 20);
				renderList.push(s);
			}
 
			addEventListener(Event.ENTER_FRAME, onRenderScene);
		}
 
		private function onRenderScene(evt:Event):void 
		{
 
			cam.angleX += (mouseY - cam.vpY) * .0005;
			cam.angleY += (mouseX - cam.vpX) * .0005;
 
			renderer.render(renderList, cam);
 
			var s:Sprite3D;
			var distSQ:Number;
			var dist:Number;
			var force:Number;
			var dx:Number;
			var dz:Number;
 
			for(var i:uint = 1;i < renderList.length; i++) 
			{
 
				s = renderList[i];
 
				dx = -s.xPos;
				dz = -s.zPos;
 
				distSQ = dx * dx + dz * dz;
				dist = Math.sqrt(distSQ);
				force = 1000 / distSQ;
 
				s.direction.x += force * dx / dist;
				s.direction.z += force * dz / dist;
 
				if(s.direction.length > 20) 
				{
					s.direction.length = 20;
				}
 
				s.xPos += s.direction.x;
				s.zPos += s.direction.z;
 
				// colorize
				/*
				var factor:Number = dist / 100;
				factor = Math.min(factor, 1);
				tex = s.material.texture;
				tex.colorTransform(tex.rect, new ColorTransform(factor - 0.0, 0.8 - factor, 1, 1));
				*/
			}
		}
	}
}
__________________
Отряд Котовскага


Последний раз редактировалось Котяра; 08.04.2010 в 13:48.
Старый 08.04.2010, 19:44
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 14  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,600
Записей в блоге: 17
Котяра, я тебя люблю) Спасибо большое =)

Старый 09.04.2010, 11:12
Котяра вне форума Посмотреть профиль Отправить личное сообщение для Котяра Посетить домашнюю страницу Котяра Найти все сообщения от Котяра
  № 15  
Ответить с цитированием
Котяра
буду краток
 
Аватар для Котяра

модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
Отправить сообщение для Котяра с помощью ICQ Отправить сообщение для Котяра с помощью Skype™
Цитата:
Сообщение от Psycho Tiger Посмотреть сообщение
Котяра, я тебя люблю)
Меня это пугает
PS оффтоп: вот потрясная демка.
__________________
Отряд Котовскага

Старый 09.04.2010, 11:29
dmitriev вне форума Посмотреть профиль Отправить личное сообщение для dmitriev Найти все сообщения от dmitriev
  № 16  
Ответить с цитированием
dmitriev
 
Аватар для dmitriev

Регистрация: Jun 2007
Адрес: Челябинск
Сообщений: 303
Отправить сообщение для dmitriev с помощью ICQ
Цитата:
вот потрясная демка.
Супер. Как они делают свечение от частиц?
__________________
O God! The Aftermath.

Старый 09.04.2010, 11:39
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 17  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Фильтром, например.

Старый 09.04.2010, 12:57
dmitriev вне форума Посмотреть профиль Отправить личное сообщение для dmitriev Найти все сообщения от dmitriev
  № 18  
Ответить с цитированием
dmitriev
 
Аватар для dmitriev

Регистрация: Jun 2007
Адрес: Челябинск
Сообщений: 303
Отправить сообщение для dmitriev с помощью ICQ
Цитата:
Фильтром, например.
Я считал что фильтры убивают быстродействие напрочь, а тут столько частиц и всё вполне себе шустро. =\
__________________
O God! The Aftermath.

Старый 09.04.2010, 13:04
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 19  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
фильтр накладывается не на каждую частицу, а на слой — вот и скорость.
__________________
Поймай яблоко 2!

Старый 09.04.2010, 13:21
Котяра вне форума Посмотреть профиль Отправить личное сообщение для Котяра Посетить домашнюю страницу Котяра Найти все сообщения от Котяра
  № 20  
Ответить с цитированием
Котяра
буду краток
 
Аватар для Котяра

модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
Отправить сообщение для Котяра с помощью ICQ Отправить сообщение для Котяра с помощью Skype™
Код AS3:
bmpDataBack.draw(bmpData, new Matrix(), new ColorTransform(), "add");
bmpDataBack.applyFilter(bmpDataBack, bmpData.rect, new Point(0, 0), blur);
__________________
Отряд Котовскага

Создать новую тему Ответ Часовой пояс GMT +4, время: 02:08.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.