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

Вернуться   Форум Flasher.ru > Flash > API приложений и сред

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 31.03.2010, 14:26
Axis! вне форума Посмотреть профиль Отправить личное сообщение для Axis! Найти все сообщения от Axis!
  № 1  
Ответить с цитированием
Axis!

Регистрация: Apr 2008
Сообщений: 9
The bomb! Изменение прозрачности материала

Добрый день.

Делаю галерею с помощью pv3d. Идея заключается в том, что на плоскости размещаю примитив Cube. Высота его 1px (такая необходимо). На одну из граней я вешаю изображение и задаю ему прозрачность. Задача следующая: нужно при наведении изменять прозрачность до 100%. Не могу добраться к спрайту с изображеним.



Код AS3:
 
	private function createGalleryImages():void {
			galleryPlanesCollection = new Array();
			for( var i:uint=0; i<galleryImagesCollection.length; i++ ) {;
			var galleryPlane:DisplayObject3D = createGalleryDisplayObject( galleryImagesCollection[i]);
			galleryPlanesCollection.push( galleryPlane );
		}
	}
 
 
	private function createGalleryDisplayObject( image:String):DisplayObject3D {
 
		var bitmap:Bitmap = loader.getBitmap( image );
		var bitmapHolder:Sprite = new Sprite();
 
		bitmapHolder.alpha = .4; // тут задаю прозрачность
		bitmapHolder.addChild( bitmap );
 
		var material:MovieMaterial = new MovieMaterial( bitmapHolder );
		material.rect = new Rectangle( 0, 0, GALLERY_PLANE_WIDTH, GALLERY_PLANE_HEIGHT );
		material.interactive = true;
 
		var cube:Cube;
 
		var black:ColorMaterial = new ColorMaterial(0x000000);
		var materialsList:MaterialsList = new MaterialsList();
 
		materialsList.addMaterial(black,"all");
		materialsList.addMaterial(material,"back");
		cube = new Cube(materialsList, 300, 0, 300);
 
		return cube;
 
	}
 
/* .... */
 
// здесь вешаю обработчик для кубика
 
 
		for (var j:int = 0; j < galleryPlanes.length; j++) {
			galleryPlanes[j].addEventListener(InteractiveScene3DEvent.OBJECT_PRESS, onPlanePress );
			galleryPlanes[j].addEventListener(InteractiveScene3DEvent.OBJECT_OVER, onPlaneOver );
			galleryPlanes[j].addEventListener(InteractiveScene3DEvent.OBJECT_OUT, onPlaneOut );
		}
 
/* .... */
 
private function onPlaneOver( event:InteractiveScene3DEvent ):void {
	// вот тут нужно как-то добраться до текстуры и изменить прозрачность... 			
}
Зарание спасибо за помощь!

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

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

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


 


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


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