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

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

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

Регистрация: Aug 2010
Сообщений: 144
По умолчанию проблема с отображением BitmapMaterial away 3d

по логике должно работать, но не тут то было=(

Код AS3:
package
{
	import flash.display.MovieClip;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.display.Bitmap;
	import flash.display.StageAlign;
	import flash.display.StageScaleMode;
	import away3d.cameras.*;
 
	import away3d.containers.View3D;
	import away3d.primitives.Plane;
	import away3d.materials.BitmapFileMaterial;
 
	import away3d.core.utils.Cast;
 
	import com.greensock.*
	import com.greensock.easing.*;
 
	import gs.*
 
	import flash.display.Loader;
	import flash.net.URLRequest;
	import flash.net.URLLoader;
 
	public class Main extends Sprite {
		private var viewport:View3D;
		private var cube:Plane;
		private var xml:XML;
		private var xmlList:XMLList;
		private var myMaterial:BitmapFileMaterial
		private var planes:Array = [];
		private var current=0;
 
 
	public function Main() {
		stage.align = StageAlign.TOP_LEFT;
		stage.scaleMode = StageScaleMode.NO_SCALE;
		viewport = new View3D({x:0, y:0});
		addChild(viewport);
		loadXML("xml.xml");
	}
 
	private function loadXML(file:String):void{
		var xmlLoader:URLLoader = new URLLoader();
		xmlLoader.load(new URLRequest(file));
		xmlLoader.addEventListener(Event.COMPLETE, comleteLoading);
	}
 
 
	private function comleteLoading(e:Event):void{
		xml = XML(e.target.data);
		xmlList = xml.children();
		trace(xmlList.length());
		createImages();
		animate()
	}
 
		private function createImages() {
		for (var i:int=0; i<xmlList.length();i++)
		{
 
			//var mc:MovieClip = new block();
			//var loader:Loader = new Loader;
			//mc.addChild(loader)
			//loader.load(new URLRequest(xmlList[1].@url))
			//loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loaderComplete)
			trace(xmlList[1].@url)
			myMaterial = new BitmapFileMaterial("metal.jpg");
			//mat = new BitmapFileMaterial("images/iPhone-back2.png");
			cube = new Plane({width:600, height:900, material:myMaterial});
 
			viewport.x = stage.stageWidth/2
			viewport.y = stage.stageHeight/2;
 
			viewport.scene.addChild(cube);
			cube.rotationX = 90;
			planes.push(cube);
			myMaterial.alpha =1;
.......
		}
В чем проблема, плоскость показывается а загруженная картинка нет, ошибки не всплывают! Как быть?

Добавлено через 1 час 5 минут
Хорошо другой вопрос можно ли в мувиМатериал загрузить, картику с помощью Loader?

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

Регистрация: Jan 2012
Сообщений: 25
если не отображается картинка, то она не подгрузилась, для этого надо делать Loader и событие к нему, которое после загрузки будет запускать функцию, в которой будет удалять слушателя,а потом выполнять действия, которые тебе нужны. и вообще, когда ставишь картинку в качестве материала, то работают не с самим Bitmap, а с его свойством - BitmapData.

Цитата:
можно ли в мувиМатериал загрузить
Тебе это не надо, MovieMaterial служит не для загрузки в него картинки, проще всего делать так:
Код AS3:
[Embed (source="1.swf")]
private const var_movie: Class;
после
Код AS3:
myMovieMaterial = new MovieMaterial(new var_movie());
у примитива cube есть свойство material, так что ему можно сделать:
Код AS3:
myCube.material = myMovieMaterial;

Старый 12.04.2012, 23:43
sneltyn вне форума Посмотреть профиль Отправить личное сообщение для sneltyn Найти все сообщения от sneltyn
  № 3  
Ответить с цитированием
sneltyn

Регистрация: Aug 2010
Сообщений: 144
Код AS3:
[Embed (source="1.swf")]
private const var_movie: Class;
а если мне нужно в цикле это сделать типа
Код AS3:
 
[Embed (source="i.swf")]
private const var_movie: Class;
Добавлено через 12 минут
Я с помощью Loader грузил, и не чего не вышло!

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

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

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


 


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


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