Ik hoop dat ik hier goed zit, ActionScript leek mij namelijk evengoed in Programming thuis te horen. Eén van de stuckies verwees me naar een topic waarvoor ik geen toestemming heb, dus op hoop van zegen...
Ik probeer in Papervision3D (Great White) de "locatie" van een Plane op te vragen. Niet echt locatie, eerder zijn nummering. Je kan bij Planes geen eigen properties toekennen, dus moet het maar zo.
Als ik een Plane trace, krijg ik dit als output:
Die 8 moet ik dus kunnen opvragen, maar ik heb geen flauw idee hoe. Bij de Papervision3D documentatie staat hij niet tussen de properties en index, position, name, ... kent hij niet. Iemand die weet hoe ik daar wel aan geraak?
Verder, ik preload een aantal afbeeldingen die via XML opgeroepen worden. 80% van de tijd gaat dat goed, maar op willekeurige moment stopt hij op afbeelding 20, of blijft hij op 1 hangen, om dan naar 14 te verspringen en toch voort te gaan naar frame 2 (met de nodige errors als resultaat). Of hij begint alles te loopen en laadt de afbeeldingen x maal, terwijl er een stop(); staat op frame 2.
Ik vermoed dat ik het preloaden fout aanpak, maar het lijkt mij de enige manier.
Het relevante stukje (ingekort):
ImageLoader moet telkens opnieuw gedeclareerd worden, anders laadt hij de laatste afbeelding i maal. Maar daardoor lijkt het mij wel dat hij de afbeelding aan mijn array toevoegt, vooraleer ze effectief ingeladen is. Alleen kan ik imageLoader nergens anders aanspreken.
Vreemd dat het meestal wel gewoon werkt en dan soms ineens niet.
Iemand een idee? Bedankt
Ik probeer in Papervision3D (Great White) de "locatie" van een Plane op te vragen. Niet echt locatie, eerder zijn nummering. Je kan bij Planes geen eigen properties toekennen, dus moet het maar zo.
Als ik een Plane trace, krijg ik dit als output:
code:
1
| 8: x:250 y:365 z:700 |
Die 8 moet ik dus kunnen opvragen, maar ik heb geen flauw idee hoe. Bij de Papervision3D documentatie staat hij niet tussen de properties en index, position, name, ... kent hij niet. Iemand die weet hoe ik daar wel aan geraak?
Verder, ik preload een aantal afbeeldingen die via XML opgeroepen worden. 80% van de tijd gaat dat goed, maar op willekeurige moment stopt hij op afbeelding 20, of blijft hij op 1 hangen, om dan naar 14 te verspringen en toch voort te gaan naar frame 2 (met de nodige errors als resultaat). Of hij begint alles te loopen en laadt de afbeeldingen x maal, terwijl er een stop(); staat op frame 2.
Ik vermoed dat ik het preloaden fout aanpak, maar het lijkt mij de enige manier.
Het relevante stukje (ingekort):
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| function loadImages():void { for ( var i:uint = 0; i < mijnXml.children().length(); i++ ) { var imageLoader:Loader = new Loader(); imageLoader.load(new URLRequest(mijnXml.children()[i].location)); imageArray[i][0] = imageLoader; imageLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler); imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); } } function progressHandler(event:ProgressEvent):void { if ( event.bytesLoaded == event.bytesTotal ) { gotoAndStop(2); } } function completeHandler(event:Event):void { currentImage++; imageLoaded.text = "Image "+currentImage+" of "+mijnXml.children().length()+" loading..."; } |
ImageLoader moet telkens opnieuw gedeclareerd worden, anders laadt hij de laatste afbeelding i maal. Maar daardoor lijkt het mij wel dat hij de afbeelding aan mijn array toevoegt, vooraleer ze effectief ingeladen is. Alleen kan ik imageLoader nergens anders aanspreken.
Vreemd dat het meestal wel gewoon werkt en dan soms ineens niet.
Iemand een idee? Bedankt