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

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

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

Регистрация: Mar 2007
Сообщений: 142
Отправить сообщение для 3Desian с помощью ICQ
По умолчанию Papervision и GlowFilter

Всем, привет. Такой затык:
Код AS3:
object.addEventListener(InteractiveScene3DEvent.OBJECT_OVER, onOVERobject);
 
			function onOVERobject(e:InteractiveScene3DEvent):void
			{ 
			var gf:GlowFilter = new GlowFilter ();
			gf.color=0x0000FF;
			gf.blurX=gf.blurY=15;
			gf.quality=2;
 
			object.filters = [gf];
			object.material = mam2;
 
			}
При наведении на объект он по идеи должен подсвечиваться GlowFilter, но только материал меняется, а GlowFilter не пашет. НЕ пойму почему. Делаю по примерам, но он не дёргается и даже не говорит об ошибке. Хэлп плиз.

object - импортированый объект
Код пишу в кадре сцены.

Старый 03.03.2009, 22:04
iflamberg вне форума Посмотреть профиль Отправить личное сообщение для iflamberg Найти все сообщения от iflamberg
  № 2  
Ответить с цитированием
iflamberg
 
Аватар для iflamberg

Регистрация: Jan 2009
Сообщений: 1,651
Код:
var vl:ViewportLayer = e.displayObject3D.createViewportLayer(viewport);
vl.filters = [gf];
работает для ppv3d2

Старый 04.03.2009, 05:54
Mur4ik вне форума Посмотреть профиль Отправить личное сообщение для Mur4ik Найти все сообщения от Mur4ik
  № 3  
Ответить с цитированием
Mur4ik
ветеран форума

Регистрация: Sep 2008
Сообщений: 717
Записей в блоге: 4
Отправить сообщение для Mur4ik с помощью ICQ
да вроде как можно и на прямую
Код AS3:
package
{
	// PV3D
	import org.papervision3d.view.BasicView;
	import org.papervision3d.objects.primitives.Cube;
	import org.papervision3d.materials.shadematerials.FlatShadeMaterial;
	import org.papervision3d.lights.PointLight3D;
	import org.papervision3d.materials.utils.MaterialsList;
	// Flash
	import flash.events.*;
	import flash.filters.*;
 
	public class FiltersDemo extends BasicView
	{
		private var cube:Cube;
 
		public function FiltersDemo()
		{
			var flatShadeMaterial:FlatShadeMaterial = new FlatShadeMaterial(new PointLight3D(), 0xDD0000, 0xB90000);
			var materialsList:MaterialsList = new MaterialsList();
 
			var blurFilter:BlurFilter = new BlurFilter(4, 4, 2);
			var glowFilter:GlowFilter = new GlowFilter(0x00FF00, 1, 64, 64, 2, 2);
 
			materialsList.addMaterial(flatShadeMaterial, "all");
 
			cube = new Cube(materialsList, 400, 400, 400);
			cube.useOwnContainer = true;
			cube.filters = [blurFilter, glowFilter];
 
			scene.addChild(cube);
 
			this.startRendering();
		}
 
		protected override function onRenderTick(event:Event = null):void
		{
			cube.yaw((mouseY - (stage.stageHeight / 2)) / (stage.height / 2) * 5);
			cube.roll((mouseX - (stage.stageWidth / 2)) / (stage.width / 2) * -5);
			renderer.renderScene(scene, camera, viewport);
		}
	}
}
Возможно в Вашем случае поможет object.useOwnContainer = true;
__________________
trace("Остановите Землю, я сойду!!!");

Старый 04.03.2009, 09:39
3Desian вне форума Посмотреть профиль Отправить личное сообщение для 3Desian Найти все сообщения от 3Desian
  № 4  
Ответить с цитированием
3Desian
 
Аватар для 3Desian

Регистрация: Mar 2007
Сообщений: 142
Отправить сообщение для 3Desian с помощью ICQ
Спасибо большое за помощ. Заработало.

А такой тупой вопрос. Я скрипт пишу в самом FLA файле, точнее в кадре и без всяких package и public. Это же одно и то же?
И для чего нужны строчки: package , public, public class FiltersDemo extends BasicView? Заранее спасибо за разъяснение.


Последний раз редактировалось 3Desian; 04.03.2009 в 11:18.
Старый 04.03.2009, 16:16
Mur4ik вне форума Посмотреть профиль Отправить личное сообщение для Mur4ik Найти все сообщения от Mur4ik
  № 5  
Ответить с цитированием
Mur4ik
ветеран форума

Регистрация: Sep 2008
Сообщений: 717
Записей в блоге: 4
Отправить сообщение для Mur4ik с помощью ICQ
http://help.adobe.com/ru_RU/ActionSc...0204-7f33.html
__________________
trace("Остановите Землю, я сойду!!!");

Старый 25.03.2009, 14:12
3Desian вне форума Посмотреть профиль Отправить личное сообщение для 3Desian Найти все сообщения от 3Desian
  № 6  
Ответить с цитированием
3Desian
 
Аватар для 3Desian

Регистрация: Mar 2007
Сообщений: 142
Отправить сообщение для 3Desian с помощью ICQ
В продолжении темы хотел бы выяснить следующее.
Есть 3Dобъект, который подсвечивается GlowFilter при клике.
Всё хорошо, но есть момент который не понимаю как победить.
Если кликнутый 3Dобъект "A" находится за 3Dобъектом "B" его не видно, но когда 3Dобъект "A" подсвечивается FilterGlow, он отображается поверх 3Dобъекта "B".
А есть ли какой то способ избежать перекрывание?
Если нет, то какая альтернатива есть? Ну может какая то обводка?


Последний раз редактировалось 3Desian; 25.03.2009 в 14:19.
Создать новую тему Ответ Часовой пояс GMT +4, время: 00:56.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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