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

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

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

Регистрация: Jan 2004
Адрес: Moscow
Сообщений: 389
Отправить сообщение для DRAGOnoid с помощью ICQ
По умолчанию позиционирование в 3D

УРА! наконец во флеше официально вышла поддержка 3D
любой DisplayObject обладает новыми вкусными методамами и свойствами типа sprite.z, sprite.scaleZ, MovieClip.rotationZ;

работают пока крайне глючно - НО РАБОТАЮТ!

и всё же пара вещей хотелось бы решить - а именно позиционирование объектов относительно друг друга.

например создавая абсолютно одинаковые по величине объекты но располагая их в разных Z координатах они будут позиционироваться по глубине так как я добавлял их с помощью addChild(); Это логично, но есть ли способ задать им так, чтобы тот что действительно сзади - был сзади а не спереди? Это я простой пример привёл потому что понимаю что можно решить и циклом сортируя по Z но что делать когда объекты поворачиваются с помощью rotationZ - тут что то немогу догадаться как их правильно позиционировать.


если получится решить первый вопрос то будет и второй
__________________
Black DRAGON хочет кушать Т_Т

Старый 19.10.2008, 11:20
__ant вне форума Посмотреть профиль Отправить личное сообщение для __ant Найти все сообщения от __ant
  № 2  
Ответить с цитированием
__ant

Регистрация: Aug 2007
Адрес: Москва
Сообщений: 56
Не проверял, но может быть поможет.
http://blog.yesutin.com/?p=246

Старый 19.10.2008, 14:53
DRAGOnoid вне форума Посмотреть профиль Отправить личное сообщение для DRAGOnoid Посетить домашнюю страницу DRAGOnoid Найти все сообщения от DRAGOnoid
  № 3  
Ответить с цитированием
DRAGOnoid
 
Аватар для DRAGOnoid

Регистрация: Jan 2004
Адрес: Moscow
Сообщений: 389
Отправить сообщение для DRAGOnoid с помощью ICQ
эхх эта штука пашет только при сортировки Z координаты (т.е. чисто положение координат) но вот повороты так и не сортирует
Код:
var ellipse1:Sprite	= new Sprite();
	ellipse1.graphics.beginFill(0xFF0000, 1);
	ellipse1.graphics.drawCircle(0, 0, 60);
	ellipse1.x		=	100;
	ellipse1.y		=	100;
	
	
addChild(ellipse1);

var ellipse2:Sprite	= new Sprite();
	ellipse2.graphics.beginFill(0x00FF00, 1);
	ellipse2.graphics.drawRoundRect(0, 0, 60, 60, 20);
	ellipse2.x		=	110;
	ellipse2.y		=	100;
	ellipse2.z		=	200;
	ellipse2.rotationY	=	-40;
	
addChild(ellipse2);

var ellipse3:Sprite	= new Sprite();
	ellipse3.graphics.beginFill(0x0000FF, 1);
	ellipse3.graphics.drawRoundRect(0, 0, 60, 60, 20);
	ellipse3.x			=	100;
	ellipse3.y			=	100;
	ellipse3.z			=	200;
	ellipse3.rotationY	=	-40;

addChild(ellipse3);

var faces:Array		=	new Array();
	faces.push(ellipse1);
	faces.push(ellipse2);
	faces.push(ellipse3);

for(var ind:uint = 0; ind < 3; ind++) { 
	faces[ind].z = faces[ind].transform.getRelativeMatrix3D(root).position.z; 
	this.removeChild(faces[ind]); 
} 
faces.sortOn("z", Array.NUMERIC | Array.DESCENDING); 
for (ind = 0; ind < 3; ind++) { 
	this.addChild(faces[ind]); 
}
а ещё так и не понял откуда взялся параметр child
__________________
Black DRAGON хочет кушать Т_Т

Старый 19.10.2008, 15:09
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 4  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
ага, какая-то досадная непонятка в FP10 - отсутствие сортировки детей в 3D пространстве, даже в five3D есть..
может есть, но плохо искал..
ничего более путного не придумал, как сортировать дисплейЛист по расстоянию детей до viewPoint,
пример: http://silin.fatal.ru/#FP10/cube3D

Старый 19.10.2008, 15:33
DRAGOnoid вне форума Посмотреть профиль Отправить личное сообщение для DRAGOnoid Посетить домашнюю страницу DRAGOnoid Найти все сообщения от DRAGOnoid
  № 5  
Ответить с цитированием
DRAGOnoid
 
Аватар для DRAGOnoid

Регистрация: Jan 2004
Адрес: Moscow
Сообщений: 389
Отправить сообщение для DRAGOnoid с помощью ICQ
Шайтан!
неплохо вышло
кстати видно по твоему примеру что 3D у них как то пока не очень 3Dшное в плане проецирования - как то они угол обзора не тот выбрали или в общем что то не то... Пока сам не знаю.

как же нехватает мааленького свойства в DisplayObject типа this.enable3Dposition = true
__________________
Black DRAGON хочет кушать Т_Т

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

Регистрация: Sep 2002
Сообщений: 30,784
3D вам не обещали, обещали 3D-трансформацию.

Старый 21.10.2008, 23:13
lklabs вне форума Посмотреть профиль Отправить личное сообщение для lklabs Найти все сообщения от lklabs
  № 7  
Ответить с цитированием
lklabs

Регистрация: Oct 2008
Сообщений: 1
Это называется 2.5D

Старый 21.10.2008, 23:25
DRAGOnoid вне форума Посмотреть профиль Отправить личное сообщение для DRAGOnoid Посетить домашнюю страницу DRAGOnoid Найти все сообщения от DRAGOnoid
  № 8  
Ответить с цитированием
DRAGOnoid
 
Аватар для DRAGOnoid

Регистрация: Jan 2004
Адрес: Moscow
Сообщений: 389
Отправить сообщение для DRAGOnoid с помощью ICQ
Цитата:
Сообщение от lklabs Посмотреть сообщение
Это называется 2.5D
не. 2.5D - это статичная изометрия со статичными спрайтами. просто выглядит всё как в 3D с зафиксированной камерой.
__________________
Black DRAGON хочет кушать Т_Т

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

Регистрация: Nov 2007
Адрес: 桜町
Сообщений: 10
Отправить сообщение для ashDotDash с помощью ICQ
если алгоритм z-сортировки примерно ясен, то построение пересечений 3D-объектов и обнаружение столкновений страшно представить.

Старый 22.10.2008, 19:59
DRAGOnoid вне форума Посмотреть профиль Отправить личное сообщение для DRAGOnoid Посетить домашнюю страницу DRAGOnoid Найти все сообщения от DRAGOnoid
  № 10  
Ответить с цитированием
DRAGOnoid
 
Аватар для DRAGOnoid

Регистрация: Jan 2004
Адрес: Moscow
Сообщений: 389
Отправить сообщение для DRAGOnoid с помощью ICQ
Это фигня ещё - ты посмотри движок альтернативы
вот 3д проецирование я и сам делал типа представляю - вот как текстурой обливать что то как то с трудом представляю а ещё чтобы это работало быстро.
как импортировать готовые модели я вообще не представляю.
но у них это всё фигня у них даже работа с источником света есть! О__О

Девид Блейн ??
,--__
О_o
//
__________________
Black DRAGON хочет кушать Т_Т

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

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

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


 


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


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