Accessibility
 
Home > Products > Director > Support > Release Notes
Macromedia Director Support Center - Release Notes

Director 8.5-Versionshinweise

Einführung
Was ist neu?
Zusätze zur Dokumentation - Tipps, Tricks, Komplexitäten und anderes Wissenswerte zu Director 8.5
Hinweise zur Dokumentation - enthält Korrekturen zur Dokumentation, die sich im Lieferumfang des Produkts befindet
Bekannte Probleme - Informationen zu bekannten Problemen in der vorliegenden Version von Director


Einführung

Dieses Dokument enthält die neuesten Informationen zu Director 8.5, die zum Zeitpunkt der Drucklegung des Handbuchs noch nicht bekannt waren.

Bitte lesen Sie dieses Dokument aufmerksam durch. Gehen Sie darüber hinaus bitte auch zum Director Support Center; dort finden Sie die neuesten TechNotes und Hinweise zur Fehlerbehebung für Director sowie Artikel mit Tipps und Techniken zur Verwendung von Director, ausdruckbare Dokumentation und vieles mehr.

 
Was ist neu?

Weitere Informationen zu den neuen Leistungsmerkmalen in Director 8.5 finden Sie in der Director-Hilfe und auf der Website von Macromedia.
Das Shockwave-Kontextmenü enthält ein neues Element "3D-Renderer". Der Standard-3D-Renderer kann während der Shockwave-Wiedergabe geändert werden, indem Sie eine Voreinstellung im Dialogfeld "Eigenschaften" ändern. Um auf dieses Dialogfeld zuzugreifen, klicken Sie mit der rechten Maustaste (Windows) bzw. bei gedrückter Ctrl-Taste (Macintosh) auf einen Shockwave-Film und wählen Sie die Option "3D-Renderer".
Die neue Lingo-Eigenschaft the debugPlaybackEnabled ersetzt die Funktionalität von messagewindow=1 der Dateien "Shockwave.ini" und "ProjectorName.ini", die in Director 8 eingeführt wurden. Beachten Sie, dass Shockwave auf dem Macintosh kein Meldungsfenster öffnen kann; stattdessen wird im Shockwave 8-Ordner eine Textdatei erstellt, in die put-Anweisungen von einem Film geschrieben werden.
Watcher- und Debugger-Variablen verfügen jetzt über eine Rollover-QuickInfo, die den Wert der Variablen anzeigt. Das Auswerten und Debuggen von Listen und Eigenschaftslisten ist jetzt einfacher.

 
Zusätze zur Dokumentation

3D, Allgemein 3D, Knochen- und Schlüsselbildanimation 3D, Verhalten Lingo
3D, Exporter 3D, Lingo Allgemein Shockwave
3D, Havok-Xtra

3D, Renderer

Als Java speichern Sound
3D, Klonen 3D, Text Installation  

 
3D, Verhalten

3D-Aktionsverhalten, deren Namen das Wort "ziehen" enthalten, wie beispielsweise "Modell ziehen", verwenden einen Auslöser von Typ "Linke Maustaste" oder "Rechte Maustaste". Sie sind nicht für die Verwendung mit den Auslösern "Cursor innerhalb", "Cursor herein" oder "Cursor heraus" vorgesehen.
Das Verhalten "Auf Modell klicken, um zur Markierung zu gehen" funktioniert nur jeweils für ein Modell pro Sprite, es sei denn, Sie weisen jedes Modell einer anderen Gruppe zu.
Die Verhalten "Achse anzeigen" und "Neuzeichnen ein/aus" funktionieren nur dann bei 3D-Text, wenn das Sprite auf "Direkt auf Bühne" gesetzt ist und ein Hardware-Renderer verwendet wird.

 
3D, Knochen- und Schlüsselbildanimation

Beim Registrieren für Ereignis-Callbacks oder Registrierungen sollte sichergestellt sein, dass die Prozeduren auch wirklich existieren, da diese Ereignis-Callbacks ansonsten ohne Fehlermeldung fehlschlagen. Anhand des folgenden Lingo-Beispiels können Sie die Existenz der Prozeduren vor dem Registrieren der Ereignisse #animationStarted und #animationEnded für die Verwendung der Prozeduren on startOfAnim bzw. on endOfAnim ermitteln.
if me.handler(#startOfAnim) then
	myModelReference.registerScript(#animationStarted,
#startOfAnim, me)
else alert "Prozedur" & #startOfAnim "nicht auffindbar"
if me.handler(#endOfAnim) then
	myModelReference.registerScript(#animationEnded,
#endOfAnim, me)
else alert "Prozedur" & #endOfAnim "nicht auffindbar"
Die von motion.type zurückgegebenen Symbole sind nicht dieselben wie für die Modifizierer, denen sie entsprechen. So ist #bones beispielsweise nicht gleich #bonesPlayer und #keyframe ist nicht gleich #keyframePlayer.
Das Entfernen des Modifizierers #keyframePlayer oder #BonesPlayer führt zu einem Verlust des Animationszustands. Bei Modellen mit mehreren Wurzeln werden die Knochen nicht korrekt ausgerichtet.
Bei Modellen mit mehreren Wurzeln werden die Knochen nicht korrekt ausgerichtet.
Shockwave 3D führt zwei Abspiellisten zum Einreihen in Warteschlangen und Wiedergeben von Animationslisten (#bonesPlayer und #keyframePlayer). Diese Listen haben zwar viel Ähnlichkeit mit den Soundkanal-Abspiellisten, weisen jedoch einen grundlegenden Unterschied auf: Bei Sound wird ein Element in der Warteschlange aus der Liste entfernt, wenn die Wiedergabe eines Sounds beginnt. Bei 3D wird das Element entfernt, wenn die Animation beendet ist.

 
3D, Klonen

Beim Klonen eines Modells, an dem der Kollisionsmodifizierer angebracht ist, wird mit Ausnahme der zugewiesenen Callback-Prozedur alles an den Klon übergeben. Daher sollte dem geklonten Modell explizit eine neue Callback-Prozedur zugewiesen werden.
Ist ein Modell ein deep clone, werden die Werte von resource.lod.level und resource.lod.auto nicht mitgeklont.
Wenn Sie eine Lichtquelle entfernen, wird jeder Klon des Lichts deaktiviert, d. h. er trägt nicht mehr zur Beleuchtung der Szene bei, kann nicht entfernt werden und jeglicher Zugriff auf seine Eigenschaften führt zu einer Fehlermeldung.

 
3D, Exporter

Der Exporter für 3D Studio MAX funktioniert nur mit Version 3.1 von 3D Studio MAX.

Wenn eine Szene mit mehreren Animationen aus MAX exportiert wird, so wird die Dauer sämtlicher Animationen auf die Länge der längsten Animation eingestellt. In Director werden die anderen Animationen mit Leerzeit aufgefüllt.

Nachfolgend einige Lösungsmöglichkeiten:
Sorgen Sie bei der Anwendungserstellung dafür, dass alle Animationen zum Zeitpunkt Null beginnen, und geben Sie bei Verwendung von
queue() oder play() im Parameter endTime das tatsächliche Ende der Animationen an. Sie können auch die Bewegungsdaten individuell (ohne Geometrie) exportieren, diese reinen W3D-Dateien mit Animation anschließend in die Besetzung importieren und dann unter Verwendung von cloneMotionFromCastmember die Animationen im gewünschten Darsteller einsetzen. Eine weitere Möglichkeit besteht in der Verwendung von loadFile() zum Laden und Zusammenführen der Animationen von Datenträgerdateien; diese Methode weist in der Shockwave-Umgebung allerdings gewisse Einschränkungen auf.

 
3D, Allgemein

Bei der Erstellung von Filmen für ein breites Publikum in Shockwave 3D sollten Sie keine der 3D-Funktionen verwenden, die bei bestimmten älteren Grafikkarten problematisch sind. Beispiel: Punkte, Drahtgitter, große Texturen (ab 512x512), große Anzahl von Polygonen oder Nebel. Achten Sie bei der Erstellung von Filmen auch darauf, dass Texture-Maps in aufeinanderfolgenden Textur-Ebenen angelegt werden.
Ein Aufruf von resetWorld() bewirkt, dass alle eventuellen Lingo-Referenzen auf 3D-Szenenobjekte ungültig werden. Dies betrifft globale Variablen ebenso wie alle anderen Referenzen die bestanden, bevor der Aufruf resetWorld() erfolgte. Der Versuch, auf diese gelöschten Objekte zuzugreifen, führt zu einem Skriptfehler vom Typ "Objekt gelöscht".

Shockwave3D-Darsteller benötigen zur Laufzeit in Projektoren folgende Xtras:

  • Shockwave3D,
  • INetURL und
  • NetFile.
Wenn in einem Film zwei aufeinanderfolgende 3D-Sprites vorliegen, kann es beim Bildwechsel zu einem Flackern kommen. Dieser Effekt lässt sich durch Überlappen der beiden Sprites in einem Bild reduzieren.

 
3D, Havok-Xtra

In Abschnitt 1.1, "Xtra Behavior Reference", in der Havok-Dokumentation wird davon ausgegangen, dass die Verhalten "Physics (HKE)" oder "Physics (no HKE)" bereits am Sprite angebracht sind. Wenn keines dieser Verhalten am Sprite angebracht ist, kommt es beim Ausführen des folgenden Beispiels zu folgendem Skriptfehler:
Script Error: Property not found
pHavok = pSprite.pHavok
#pHavok
In Abschnitt 2, "Xtra Behavior Reference", in der Havok-Dokumentation wird zu Unrecht behauptet, dass auf die Havok-Verhalten über das Director-Dialogfeld "Besetzungsbibliothek" zugegriffen werden kann. Diese Verhalten werden jedoch bei der Standardinstallation von Director nicht in den Ordner "Libs" mitinstalliert. Um die Havok-Verhalten in der Director-Umgebung zu verwenden, gehen Sie wie folgt vor:
1 Kopieren Sie den Ordner "Havok Behaviors", der sich im Verzeichnis "Havok" auf der Installations-CD befindet, in das Verzeichnis "Libs" im Stammordner von Director.
2 Starten Sie Director.
3 Wählen Sie "Fenster"->"Bibliothekspalette"->"Havok-Verhalten".
Die Funktion havokRef.rigidBody() unterscheidet zwischen Groß- und Kleinschreibung.

 
3D, Lingo

Verwenden Sie go to the frame nicht in einer Callback-Prozedur, wie etwa für einen Kollisions-Callback.

Verwenden Sie stattdessen lieber eine globale Variable oder Eigenschaftsvariable in der Kollisionsprozedur als Flagge, wenn Sie sie beenden möchten, und überprüfen Sie den Status in einer normalen exitFrame-Prozedur und führen Sie dann go to the frame dort aus.

Die drei Untereigenschaften ambient, diffuse und blend werden von den Eigenschaften shader, inker und toon eines Modells gemeinsam genutzt. Wenn Sie diese Werte für eine dieser Eigenschaften einstellen, werden sie damit auch für alle anderen miteingestellt.
Wenn Sie die Eigenschaft the floatPrecision für einen Vektors auf eine hohe Genauigkeit einstellen, statt die standardmäßige Fließkommazahl-Präzision zu verwenden, führt dies zu Werten mit geringerer Präzision. Die standardmäßige Fließkommazahl-Präzision ist 4. Die Fließkommazahl-Präzision hat keinen Einfluss auf Transformationsmatrixen.
Um auf die einzelnen X-, Y- oder Z-Komponenten der Eigenschaft axisAngle zuzugreifen und sie einzustellen, verwenden Sie transform.axisAngle.z (bzw. x odery ), da diese Eigenschaft nicht den Listenzugriff wie transform.axisAngle[1][1] unterstützt.
Wenn Sie den Wert der Farbe eines Lichts oder seiner Klone ändern, führt dies dazu, dass alle Lichter den gleichen Wert haben.
Der Lingo-Befehl sendEvent() sendet nur Nachrichten an Skripte, die per registerForEvent() registriert sind. Er sendet keine Nachrichten an Skripts, die per member.model(1).registerscript() registriert sind.
Wenn sich zwei Modelle berühren und beide den #collision Modifizierer haben, kann es beim Wechsel in aus Projektoren oder Shockwave-Fenstern zu einem Fehler kommen.

 
3D, Renderer
Allgemein

Bei der Installation von Director 8.5 wird nicht die Liste der nicht unterstützten Treiber installiert. Die Liste der nicht unterstützten Treiber kann nur über die Shockwave 3D-Plug-In-Installation installiert werden. Diese Liste sorgt dafür, dass bestimmte Hardwarefunktionen für einen Renderer nicht angeboten werden, wenn der betreffende Treiber bekannte Probleme aufweist. Allerdings nutzen sowohl Shockwave 3D als auch Director 8.5 die Liste der nicht unterstützten Treiber, falls sie vorhanden sein sollte.
Da sich die Bildrate der verschiedenen Renderer stark unterscheidet, kann es vorkommen, dass ein Film zwar korrekt auf einem Renderer mit langsamerer Bildrate abgespielt wird (wie etwa dem Software Renderer), derselbe Film jedoch mit einem anderen Renderer (wie etwa einem hardwarebasierten Renderer) falsch dargestellt wird.
Die 3D-Renderqualität und -stabilität bei einer Multi-Monitor Konfiguration hängt direkt von der Qualität der Grafikkarte und ihren Treibern ab. Bei zwei Monitoren kann die 3D-Grafikdarstellung unter Umständen sowohl unter Windows-, als auch auf Macintosh-Rechnern beeinträchtigt sein. Es wird allgemein empfohlen, neuere Grafikkarten und die jeweils aktuellsten Treiber zu verwenden. Sollten selbst nach dem Installieren von Treiberupdates noch Probleme auftreten, wenden Sie sich bitte an den Hersteller Ihrer Grafikkarte.
Für den Software- und die DirectX-Renderer werden Glanzlichter auf den Texturen aufgetragen. OpenGL fügt Glanzlichter standardmäßig unter den Texturen hinzu. Director nutzt eine OpenGL-Erweiterung, mit der die Ergebnisse an der DirectX und des Software-Renderers angepasst werden, aber nicht alle Grafikkarten oder OpenGL-Implementationen unterstützen diese Erweiterung. Auf Macs kann diese Erweiterung beispielsweise nicht eingesetzt werden.
Das Flat-Shading eines Gitternetz-Primitiven weist je nach OpenGL- oder DirectX-Renderer unterschiedliche Ergebnisse auf.

Hardware

Der OpenGL-Aktualisierer von Apple überschreibt möglicherweise einige Ihrer vorhandenen Grafikkarten-OpenGL-Erweiterungen. Es wird empfohlen nach der OpenGL Installation von Apple Ihre Grafiktreiber neu zu installieren.
OpenGL unterstützt nur "Direkt auf Bühne"-3D-Sprites. Bei anderen Sprites wechselt Director zum Software-Renderer.
Windows-Systeme mit Dual-Monitor Unterstützung bieten keinen OpenGL-Renderer an. Bei der Anwendungserstellung und Wiedergabe ist nur DirectX- oder Software-Rendering möglich.
Um den DirectX 7-Renderer verwenden zu können, muss DirectX 7 oder neuer auf Ihrem Computer installiert sein. DirectX kann unter http://www.microsoft.com/directx/ bezogen werden.
Beim OpenGL Hardware-Renderer werden 3D-Objekte möglicherweise deutlich dunkler dargestellt als beim DirectX- oder Software-Renderer, und die Glanzlichteffekte erscheinen weniger ausgeprägt.

Es kann unter Director 8.5 und Shockwave 3D beim 3D Rendering zu Problemen kommen, wenn in einem Windows-System eine DirectX-Version installiert ist, die nicht den Anforderungen Ihrer Grafikkartentreiber entspricht.
Hierbei handelt es sich jedoch nicht um ein Director- oder Shockwave-spezifisches Problem. Laden Sie in diesem Fall einfach eine neuere DirectX-Version von der Website von Microsoft herunter (http://www.microsoft.com/directx). Anders formuliert sollte ein DirectX5-geeigneter Anzeigetreiber auf einem System mit DirectX 7 einwandfrei funktionieren. Ein DirectX7-Anzeigetreiber kann jedoch möglicherweise auf DirectX5-Systemen zu Probleme führen.

Software

Bei Verwendung des Software-Renderers kann das Kopieren von zu vielen 3D-Sprites auf die Bühne dazu führen, dass Director mit einer Fehlermeldung beendet wird, da der Software-Renderer mehr Speicher beansprucht als die Hardware-Renderer. Dies liegt daran, dass er keinen Zugriff auf den Videospeicher hat und Texturen nicht komprimiert.
TextureRepeat ist im Softwaremodus grundsätzlich auf TRUE gesetzt.
Der Software-Renderer kann die folgenden 3D-Funktionen nicht ausführen: Punkte, Drahtgitter, flat shading, Kantenglättung (anti-aliasing). Beim Rendern von 32-Bit-Texturen im #rgba8888 Modus erscheinen Grafiken, die mit Software gerendert wurden, fehlerhaft, da keine Unterstützung für Texturfilterung vorliegt

 
3D, Text

Wenn Sie ein 3D-Text-Sprite im Shockwave 3D-Fenster öffnen möchten, wählen Sie "Datei">"Voreinstellungen">"Editoren", wählen Sie "3D-Text", klicken Sie auf "Bearbeiten" und wählen Sie anschließend "3D-Text in Shockwave 3D bearbeiten". Sobald Sie das Shockwave 3D-Fenster als Standardeditor für 3D-Text festgelegt haben, können Sie den Darsteller bearbeiten, indem Sie entweder das Sprite auf der Bühne auswählen und die Eingabetaste drücken oder den Darsteller im Besetzungsfenster oder im Drehbuch auswählen bzw. das Piktogramm im Eigenschafteninspektor markieren und dann doppelklicken oder die Eingabetaste drücken.
Die Modifizierer SDS (Oberflächenunterteilung) und LOD (Detailreduzierung) können nicht für 3D-Text eingesetzt werden.
Die Verhalten "Sprite-Übergänge" in der Verhaltensbibliothek funktionieren nicht für 3D-Text.
Wenn Sie eine Textur auf extrudierten 3D Text anwenden, der in einen leeren Shockwave 3D-Darsteller übertragen wurde, muss der Texturdarsteller in der Besetzung vor dem 3D-Darsteller sein, da die Textur andernfalls nicht angezeigt wird.
Ein 3D Textmodell, welches in einen 3D-Darsteller extrudiert wurde, muss unter Umständen in Richtung Kamera gedreht werden oder umgekehrt.
Der Befehl "In Bitmap konvertieren" funktioniert nicht für 3D-Darstellern.
Der Lingo-Befehl shaderList[x] weist den Shader auf den durch x angegebenen Buchstaben zu ; shaderList[2] würde einen Shader also auf den zweiten Buchstaben im Textdarsteller anwenden.
Unterstreichungen und Bildlaufleisten funktionieren nicht für 3D-Textdarsteller.
Wenn Texturen auf einem 3D-Textdarsteller flackern oder nicht richtig ausgerichtet sind, setzen Sie the textureRepeatMode auf FALSE. Dieses Problem tritt nur bei bestimmten Grafikkarten-/Rendererkombinationen auf.

 
Allgemein

Das Kopieren und Einfügen von Sprites oder Darstellern zwischen unterschiedlichen Versionen von Director wird nicht unterstützt.

 
Installation

Um Director auf einem Windows 2000-System zu installieren, benötigen Sie Administratorzugriffsrechte.

 
Lingo

Entwickler sollten größte Vorsicht walten lassen wenn sie in ihrem Code zirkuläre Bezüge verwenden, wie etwa:
x = [1,2,3]
y = [4,5,6]
y[3] = x
x[3] = y
X bezieht sich auf y, y bezieht sich auf x - dies ist ein so genannter zirkulärer Bezug, der vermieden werden sollte, um Speicherfehler zu vermeiden. Zirkuläre Bezüge können auch bei der Parent-Child-Skripterstellung auftreten, wenn sich ein Ancestor-Objekt auf sein eigenes Child-Objekt bezieht. Beispiel: Das Ancestor-Objekt verwaltet eine Liste aller Instanzen sämtlicher Skripts, die Eigenschaften von ihm übernehmen, und jedes geerbte Skript verwaltet einen Bezug auf sein Parent-Objekt. In diesem Fall geht jede Instanz verloren und sollte nach ihrer Verwendung entfernt werden. Obwohl Director beim Beenden belegten Speicher leert, liegt es am Entwickler, in derartigen Fällen den Speicher selbst freizugeben.
Das Director-Fortsetzungszeichen aus früheren Versionen (¬) bewirkt einen Skriptfehler, wenn Skripts in der Authoring-Umgebung neu kompiliert werden. Stattdessen sollte das neu in Director 8 eingeführte Fortsetzungszeichen, der Rückwärtsschrägstrich (\), verwendet werden. Dies führt nicht zu Fehlern bei alten Projektoren oder Shockwave-Filmen, selbst wenn diese vom Shockwave 8.5-Plug-In abgespielt werden.

 
Als Java speichern

Das Installationsprogramm für "Als Java speichern" ist in diesem Release nicht enthalten.

 
Shockwave

Entwickler, die Shockwave-Filme erstellen, stellen möglicherweise fest, dass die Größe ihrer .dcr-Dateien um 500 bis 1000 Bytes reduziert wird, wenn sie unmittelbar vor dem Veröffentlichen alle Skripts neu kompilieren und anschließend speichern.
Die Eigenschaft preload von extern verknüpften Shockwave 3D-Darstellern führt dazu, dass Director den betreffenden Darsteller vollständig laden muss, bevor er wiedergegeben werden kann. Eine Ausnahme hiervon besteht bei Shockwave: Hier wird bewirkt, dass der Darsteller mit dem Streamen beginnen muss, sobald der Film startet. Dies entspricht dem Verhalten von Flash-Darstellern. Daher ist es wichtig, die Eigenschaft state des 3D-Darstellers zu überprüfen, um sicherzustellen, dass zumindest der Header geladen ist (state >= 2), bevor 3D-Lingo-Aktionen mit dem betreffenden Darsteller durchgeführt werden können.

 
Sound

Bei der Verwendung der Lingo-Sound-Befehle, die in Director 8 eingeführt wurden, sollten Sie für die Lingo-gesteuerte Audiowiedergabe Kanal 3-8 verwenden, um Konflikte mit Drehbuch-Sounds, die in Soundkanal 1 und/oder 2 abgespielt werden, zu vermeiden.
Bei der Vorschau von Sounds im Eigenschafteninspektor verwendet Director zum Abspielen der Sounds Kanal 1. Falls Sie also eine Warteschlange für Kanal 1 eingerichtet haben, wird durch die Verwendung des Eigenschafteninspektors der Inhalt der Warteschlange gelöscht.
Verwenden Sie sound(whichChannel).status <> 0 anstelle von soundBusy( whichChannel ), um zu bestimmen, ob ein Soundkanal verfügbar ist oder gegenwärtig verwendet wird. Status wird direkt von der Kanal-Engine aktualisiert und verfolgt Änderungen, die von anderen neuen Befehlen vorgenommen werden, rascher und präziser.


Hinweise zur Dokumentation

3D-Lingo-Zusätze Lingo-Wörterbuch Online-Hilfe
3D-Abschnitt in "Was ist neu?" Multiuser Server-Abschnitt in "Was ist neu?" Director-Benutzerhandbuch

 
3D-spezifische Nachträge zum Lingo-Wörterbuch

Die Syntax für die Eigenschaft debugPlaybackEnables ist falsch. Die korrekte Syntax lautet folgendermaßen:
the debugPlaybackEnabled
Der Eintrag zu generateNormals enthält falsche Bezüge auf #face. Das korrekte Symbol ist #flat.
Die Eigenschaften targetFrameRate und useTargetFrameRate wurden für 3D-Sprites hinzugefügt. Die Eigenschaft targetFrameRate gibt die gewünschte Anzahl von Bildern pro Sekunde beim Rendern des Sprites an.. Der Standardwert ist 30 Bilder pro Sekunde. Ist die Eigenschaft useTargetFrameRate=TRUE, wird die Polygonanzahl der Modelle im Sprite entsprechend der angegebenen Zielbildrate reduziert. Standardmäßig ist die Eigenschaft useTargetFrameRate=FALSE.
Verwenden Sie zur Einstellung von targetFrameRate die folgende Syntax:
sprite(which3dSprite).useTargetFrameRate = TRUE
sprite(which3dSprite).targetFrameRate
Es wurde eine neue Shader-Eigenschaft namens textureList hinzugefügt. Sie verwendet die folgende Syntax:
member().model().shader().textureList
Ein Shader kann bis zu acht Texturebenen verwenden. Die acht Einträge dieser Liste geben an, welche Texturen den einzelnen Ebenen zugewiesen sind.
Beim Testen gibt diese Eigenschaft eine Liste der Texturobjekte mit jeweils einem Eintrag pro Ebene zurück.
Wenn diese Eigenschaft eingestellt ist, gibt sie ein Texturobjekt an, das auf alle Ebenen angewendet werden soll. Mit dem Argument void lässt sich die Texturliste für alle Ebenen leeren.
Um das Texturobjekt für eine bestimmte Texturebene einzustellen, verwenden Sie für die Angabe der Ebene Listenklammern.
member().model().shader().textureList[index]
Der Eintrag smoothness sollte keinen Querverweis auf den Eintrag numSegments enthalten. Diese Begriffe haben nichts miteinander zu tun.
Der Eintrag removeModifier sollte Querverweise auf die Einträge addModifier, modifier, modifier[] und modifiers enthalten.
Der Eintrag addModifier sollte Querverweise auf modifier und modifier[] enthalten.
Das Beispiel im Eintrag removeOverlay enthält fälschlicherweise eckige Klammern ([] ). Die korrekte Beispielsyntax lautet sprite(5).camera.removeOverlay(1). Die Syntax für die Befehle removeOverlay() und removeBackdrop() stützt sich auf den Befehl deleteAt(), der zum Bearbeiten von Listen verwendet wird.
Die Eigenschaft sizeRange von Partikelsystemressourcen enthält zwei Untereigenschaften. Die Eigenschaft sizeRange.start gibt die Größe der Partikel zu Beginn ihrer Lebensdauer an. Die Eigenschaft sizeRange.end gibt ihre Größe am Ende ihrer Lebensdauer an. Diese beiden Eigenschaften sollten als separate Einträge im Lingo-Wörterbuch aufgeführt werden.
Das 3D-Lingo-Wörterbuch enthält Einträge sowohl für die Kameraeigenschaft fieldOfView als auch die Kameraeigenschaft projectionAngle. Diese Eigenschaften sind identisch; es wird empfohlen, nur die Eigenschaft fieldOfView zu verwenden.
Der Eintrag registerForEvent() sollte einen Querverweis auf den Eintrag unregisterAllEvents() enthalten.
Der Abschnitt "Text (3D)" im Kapitel "3D-Lingo nach Funktion" des Lingo-Wörterbuchs sollte den Eintrag autoCameraPosition enthalten.
Wenn Sie eine uneinheitliche Skalierung und einen benutzerdefinierten pointAtOrientation-Wert für den gleichen Node wie etwa ein Modell anwenden, bewirkt der Aufruf von pointAt höchstwahrscheinlich eine unvorhergesehene uneinheitliche Skalierung. Dies liegt an der Reihenfolge, in der die uneinheitliche Skalierung und die Drehung angewendet werden, um den Node korrekt auszurichten. Zur Behebung dieses Problems stehen Ihnen verschiedene Möglichkeiten zur Verfügung:
1 Vermeiden Sie die gleichzeitige Verwendung einer uneinheitlichen Skalierung und nicht-standardmäßige Werte für pointAtOrientation für denselben Node.
2 Entfernen Sie vor dem Aufruf von pointAt die Skalierung für den Node und wenden Sie sie anschließend wieder an. Beispiel:
scale = node.transform.scale
node.scale = vector( 1, 1, 1 )
node.pointAt(vector(0, 0, 0)) -- nicht-standardmäßiger pointAtOrientation-Wert
node.transform.scale = scale
Der Lingo-Befehl scale() für Transformationen kann auch einen Vektor annehmen.
Eine neue Eigenschaft für 3D-Darsteller, bgColor, wurde hinzugefügt. Diese Eigenschaft steuert die Hintergrundfarbe von 3D-Darstellern und kann mithilfe der folgenden Syntax auf jeden gültigen RGB-Wert eingestellt werden:
member(whichMember).bgColor = rgbValue

 
3D-Abschnitte in "Was ist neu in Director 8.5?"

Die Eigenschaft member().model().modifier sollte in der Liste der für Modelle verfügbaren Eigenschaften enthalten sein. Diese Liste erscheint in Kapitel 7, "Mit Modellen und Modellressourcen arbeiten".
Die Eigenschaft smoothness von 3D-Text hat einen Höchstwert von 10. In Kapitel 5, "Mit 3D-Text arbeiten", wird dieser Höchstwert fälschlicherweise als 100 angegeben.
Der Abschnitt "3D-Welt" in Kapitel 3, "3D-Grundlagen", enthält den folgenden falschen Satz:
"Shader werden Modellressourcen zugewiesen und von allen Modellen, die auf dieser Modellressource basieren, gemeinsam verwendet."
Dieser Satz sollte richtig lauten:
"Shader werden individuellen Modellen zugewiesen."
Der Abschnitt "Eigenschaften des Standard-Shaders" in Kapitel 7, "Mit Modellen und Modellressourcen arbeiten", enthält eine Beschreibung von blendFunctionList, in der es fälschlicherweise heißt, dass #alpha und #constant mögliche Werte dieser Eigenschaft sind. Diese Werte stehen bei blendFunctionList jedoch nicht zur Verfügung.
Das Thema "Lingo für 3D-Text" in Kapitel 5, "Mit 3D-Text arbeiten", enthält den folgenden Satz:
"Informationen zu Methoden und Eigenschaften, die in Verbindung mit 3D-Text nicht eingesetzt werden können, finden Sie im Abschnitt "Ausnahmen"."
Dieser Satz sollte richtig lauten:
"Praktisch alle Lingo-Elemente für Text funktionieren auch für 3D-Text. Informationen zu Methoden und Eigenschaften, die in Verbindung mit 3D-Text nicht eingesetzt werden können, finden Sie im Abschnitt "Ausnahmen"."
Der Satz vor der Tabelle im Abschnitt "Ausnahmen" sollte wie folgt lauten:
"Die folgenden Befehle und Eigenschaften, die von normalem Text verwendet werden, funktionieren bei 3D-Text nicht wie erwartet."
Der Abschnitt "Neue Lingo-Elemente für 3D-Text" in Kapitel 5, "Mit 3D-Text arbeiten", sollte in der Tabelle auch den Eintrag autoCameraPosition enthalten.
Informationen zum Vorbereiten von 3D-Inhalt auf die Verwendung in Director 8.5 ist in einem Artikel im Director Support Center auf der Website von Macromedia enthalten. Dieser Artikel bietet auch Informationen zur Verwendung des 3D SpeedPort-Xtra für Director 8.5, welches zum Konvertieren von 3D-OBJ-Dateien in W3D-Dateien verwendet wird.

 
Lingo-Wörterbuch

Der Eintrag mostRecentCuePoint sollte Querverweise auf die Einträge cuePointTimes und on cuePassed enthalten.
Die Eigenschaft currentTime kann nur für herkömmliche Sounddarsteller (WAV, AIFF, SND) eingestellt werden.
In den folgenden Einträgen des Lingo-Wörterbuchs sind die Verknüpfungen zu den "Show Me"- und Beispielfilmen falsch: frameReady(), map(), mediaReady und on streamStatus. Die Beispielfilme für diese Einträge finden Sie im "Show Me"-Ordner von Director 8.5.
Der Eintrag soundChannel sollte einen Querverweis auf den Eintrag currentChannel enthalten.
Der Befehl play() sollte im Abschnitt "Sound" des Kapitels "Lingo nach Funktion" enthalten sein.
Die Eigenschaft channelCount()kann nur bei Sounddarstellern getestet werden. Bei Verwendung mit Soundkanälen wird ein falsches Ergebnis zurückgegeben. Der Eintrag channelCount() enthält falsche Bezüge auf Soundkanäle.
Der Eintrag repeat with enthält die folgende Syntax:
repeat with counter = start to finish
     Anweisung(en)
end
Die letzte Zeile dieses Beispiels sollte wie folgt lauten:
end repeat
Die Eigenschaft rateShift von Sounds in der Warteschlange kann nun mit so genannten "Cents" eingestellt werden. Ein Cent ist ein Hundertstel eines Halbtons. Spezifizieren Sie Cents anhand von Fließkommazahlen mit zwei Dezimalstellen, wie 1.35, wobei die Ganzzahl 1 der Halbton ist und der Dezimalwert .35 die Cents angibt.
Der Eintrag copyToClipboard enthält unvollständige Informationen. Sie können mit diesem Befehl Darsteller zwischen einzelnen Filmen sowie für Felder, Bitmapdarsteller und Sounddarsteller kopieren. Außerdem können Sie damit Darsteller in andere Anwendungen kopieren.
Der Abschnitt "Text" im Kapitel "Lingo nach Funktion" des Lingo-Wörterbuchs enthält fälschlicherweise eine Liste mit Lingo-Elementen, die mit den Textboxen von Felddarstellern verwendet werden.
Die Listen der Lingo-Elemente, die mit Schaltflächen und Menüs verwendet werden, sind nur schwer zu finden. Sie befinden sich im Abschnitt "Benutzeroberflächenelemente" des Kapitels "Lingo nach Funktion".
Der Eintrag disableImagingTransformation enthält falsche Syntaxangaben. Richtig muss die Syntax wie folgt lauten:
the disableImagingTransformation
Das Kapitel "Lingo nach Funktion" enthält eine Liste mit Elementen, die zur Durchführung von Bildoperationen zur Laufzeit geeignet sind. Diese Liste ist im Abschnitt "Bitmaps" des Kapitels enthalten.
Der Eintrag scrollByLine im Lingo-Wörterbuch gibt fälschlicherweise an, dass Zeilen durch RETURN-Zeichen getrennt werden und nicht durch einen automatischen Zeilenumbruch. Zeilen mit Zeilenumbruch werden als separate Zeilen angesehen.
Die Darstellereigenschaft type enthält jetzt den für für 3D-Darsteller gültigen Wert #shockwave3D.

 
Multiuser Server-Abschnitte im Handbuch "Was ist neu in Director 8.5?"

Der Serverbefehl getUserCount kann mithilfe einer Listensyntax Informationen über mehrere Serverfilme gleichzeitig abrufen. Die folgende Syntax sollte verwendet werden:
gMultiUserInstance.SendNetMessage("system.movie.getUserCount",
anySubject, ["Movie1", "Movie2"])
Der Abschnitt "Übersicht über serverseitige Skriptobjekte" im Kapitel "Skripterstellung für den Multiuser Server" enthält ein Beispiel, das durch den folgenden Satz eingeleitet wird:
"Die folgenden Anweisungen erstellen ein Parent-Skript aus dem Text der Datei "testScript.ls":"
Dieser Satz enthält einen falschen Bezug auf Parent-Skripts. Richtig sollte er lauten:
"Die folgenden Anweisungen erstellen ein globales Skript aus dem Text der Datei "testScript.ls":"
Im Kapitel "Multiuser-Lingo-Wörterbuch" enthält der Eintrag setBreakPoint() die folgenden falschen Angaben:
"Ein Breakpoint kann nur dann ausgelöst werden, wenn er in einer Prozedur festgelegt ist, die in einem mit dem Befehl new() (Thread) erstellten Thread läuft. Im Standard-Thread des Servers können keine Breakpoints festgelegt werden."
Tatsächlich ist es jedoch so, dass der Haupt-Thread sowie alle weiteren mithilfe des Befehls new() erstellten Threads Breakpoints enthalten und debuggt werden können.
Die folgende Syntax entfernt alle Breakpoints in einem Skriptobjekt:
scriptObject.setBreakPoint(-1, -1, 0)
Der Befehl changeMovie wurde zum Server hinzugefügt.
Mit diesem Serverbefehl können Benutzer von einem Film zu einem anderen wechseln, ohne dabei die Verbindung zum Server zu beenden. Dieser Befehl bewirkt, dass der Benutzer beim aktuellen Film abgemeldet wird, alle Gruppen verlässt, die Laufzeitattribute aufgibt usw., ganz so, als habe er sich abgemeldet. Anschließend wird der Benutzer bei dem durch SomeMovieID angegebenen neuen Film angemeldet, und zwar unter Verwendung der gleichen Benutzer-ID, des gleichen Kennworts und der gleichen moviePath-Informationen wie bei der ursprünglichen Verbindung. Damit werden Lobby-Anwendungen benutzerfreundlicher gestaltet, da Sie zwischen Filmen wechseln können, ohne eine neue Serververbindung herstellen zu müssen.
Der Befehl changeMovie verwendet die folgende Syntax:
errCode =
gMultiuserInstance.sendNetMessage("System.User.ChangeMovie",
"=anySubject", "SomeMovieID")
Der Befehl sendNetMessage() kann mit einer optionalen Eigenschaftenlistensyntax verwendet werden. Die optionale Syntax lautet wie folgt:
gMultiuserInstance.sendNetMessage([#recipients:
whichUsersOrGroups#subject: "Beispielbetreff", #content:
whatMessage])
Der Datenbankbefehl getUserNames sollte im Abschnitt "Datenbankbefehle" im Kapitel "Multiuser-Lingo nach Funktion" enthalten sein.
Es gibt jetzt zwei neue Thread-Eigenschaften zum Verwalten der Thread-Aktivität: runPeriod und sleepPeriod. Mit diesen Eigenschaften können Sie festlegen, wie lange ein bestimmter Thread die CPU beansprucht oder nicht aktiv ist.
Der Wert runPeriod wird in Millisekunden angegeben und definiert den Zeitraum, in dem der Thread die CPU nutzt, bevor er in den Ruhezustand versetzt wird. Die Laufperiode läuft nur aus, wenn der Thread Lingo ausführt und damit auf die CPU zugreift. Die Laufzeit eines Threads im Ruhezustand läuft nicht aus. Diese Bedingung steht nicht im Konflikt mit der Ausführung anderer Threads. Wenn runPeriod auf 0 gesetzt ist (Standard), ist die Laufzeit endlos.
Stellen Sie runPeriod unter Verwendung der folgenden Syntax ein:
aThreadReference.runPeriod = timeInMilliseconds
Hinweis: Eine Eigenschaftsvariable namens abortCheckPeriod wurde zur Multiuser Server-Datei "Dispatcher.ls" hinzugefügt. Diese Datei enthält Code, der nach Threads sucht, die länger ausgeführt werden als in abortCheckPeriod festgelegt. Wenn ein Thread den Wert abortCheckPeriod überschreitet, wird er angehalten und gibt den Status #error zurück. Um dies zu verhindern sollten Sie dafür sorgen, dass der Code, der von einem einzigen Thread ausgeführt wird, innerhalb einer Periode ausgeführt werden kann, die kürzer ist als der Wert von abortCheckPeriod, oder erhöhen Sie den Wert von abortCheckPeriod. Der Standardwert ist 5000 Millisekunden.
Der Wert sleepPeriod wird in Millisekunden angegeben und legt fest, wie lange der Thread im Ruhezustand ist, bevor seine Laufzeit abläuft. Ein Thread im Ruhezustand führt keinen Code aus und beansprucht keine CPU-Ressourcen. Wenn die Laufzeit abläuft, während Code ausgeführt wird, wird dieser Code nicht weiter ausgeführt, sobald die Ruhezeit abläuft. Wenn eine Prozedur auf diese Weise unterbrochen wird, muss sie nach Ablauf der Ruheperiode des Threads erneut aufgerufen werden. Aus diesem Grund sollten einzelne Threads nicht mehr als jeweils eine Aufgabe ausführen.
Denken Sie daran, dass repeat-Schleifen kurz gehalten oder ganz vermieden werden sollten, da es sich bei ihnen um die einzige Lingo-Codestruktur handelt, die die gesamte CPU-Kapazität beansprucht und daher den Zugriff durch andere Threads verhindert.
Stellen Sie die Eigenschaft sleepPeriod mithilfe der folgenden Syntax ein:
aThreadReference.sleepPeriod = timeInMilliseconds
Im Ordner "Scripts" des Multiuser Servers befindet sich jetzt eine Datei namens "GlobalScripts.ls". Stellen Sie Prozeduren, die von einem Client-Film ausgeführt werden sollen, in diese Datei. Sie können diese Prozeduren auch von jedem beliebigen Film ausführen, als ob sie sich in der mit dem betreffenden Film verknüpften Skriptdatei befänden. Sie können auch eigene globale Skriptdateien hinzufügen, indem Sie sie an die Variable globalScriptList in der Datei "ScriptMap.ls" anfügen.
Zur Datei "ScriptMap.ls" wurde eine scriptObjectList-Prozedur hinzugefügt. Wenn Sie Skripts haben, die Sie als Parent-Skripts zum Erstellen von Child-Objekten verwenden möchten, fügen Sie sie dieser Liste hinzu. Mithilfe von Lingo können Sie dann die Prozedur findScriptByName in der Dispatcher-Datei aufrufen, um einen Bezug zum gewünschten Parent-Skript herzustellen:
myRef = findScriptByName("MeinParentSkript")
Verwenden Sie dann die Funktion new() mit dem Skriptbezug, den Sie gerade hergestellt haben:
myChildObject = new(myRef)
Aufgrund der in der Multiuser-Dokumentation erwähnten neuen Debugging-Funktionalität sollte die folgende Zeile aus der Datei "scriptmap.ls" entfernt werden:
-- theMap.append( [ #movieID: "Debug", #groupID: "@DebugGroup",
#scriptFileName: "Debug.ls" ] )
ChangeMovie syntax - recipient: System.User.ChangeMovie content: "SomeMovieID". Mit diesem Befehl können Benutzer von einem Film zu einem anderen wechseln, ohne dabei die Verbindung zum Server zu beenden. Dieser Befehl bewirkt, dass der Benutzer beim aktuellen Film abgemeldet wird, alle Gruppen verlässt, die Laufzeitattribute aufgibt usw., ganz so, als habe er sich abgemeldet. Anschließend wird er beim neuen Film namens SomeMovieID angemeldet, und zwar unter Verwendung der gleichen Benutzer-ID, des gleichen Kennworts und der gleichen moviePath-Informationen wie bei der ursprünglichen Verbindung. Diese Funktionsänderung wurde implementiert, um Lobby-Anwendungen benutzerfreundlicher zu gestalten. Damit können Sie zwischen Filmen wechseln, ohne eine neue Serververbindung herstellen zu müssen.

 
Online-Hilfe

Wenn Sie mit einem Macintosh-Computer und Mac OS 8.6 oder neuer arbeiten, müssen Sie möglicherweise eine neuere Version von Mac OS Runtime für Java installieren, um die Suchfunktion in der Hilfe von Director verwenden zu können. Diese Version ist auf der CD von Director 8.5 enthalten oder kann kostenlos von der Apple-Website heruntergeladen werden:

http://asu.info.apple.com/swupdates.nsf/artnum/n11927
Wenn Sie mit Version 4 von America Online arbeiten, wird beim Aufrufen der elektronischen Hilfe eventuell eine JavaScript-Warnmeldung eingeblendet. Diese Meldung können Sie einfach ignorieren.
Zum Anzeigen der Show-Me-Filme in der Online-Hilfe ist Shockwave erforderlich.
Bei Auswahl von AOL als Standardbrowser in Director kann das Hilfesystem möglicherweise nicht aufgerufen werden. Es wird empfohlen, als Standardbrowser in Director stattdessen Internet Explorer oder Netscape festzulegen.
Die HTML-Hilfe enthält keine Links zum Film "Einführung" ("Guided Tour"). Sie starten die Führung, indem Sie im Ordner "Guided Tour" auf die Datei "Guided Tour.htm" doppelklicken.
Die Dokumentation für das RealMedia-Xtra befindet sich auf der Macromedia-Website unter http://www.macromedia.com/support/director/soundvideo/realmedia_xtra/.

 
Director-Benutzerhandbuch

Der Abschnitt "Was ist neu in Director 8?" im Kapitel "Erste Schritte" enthält einen Querverweis auf Bilddarstellungs-Lingo. Durch Klicken auf den entsprechenden Link gelangen Sie fälschlicherweise zum Abschnitt "Bitmapgrafiken mit Lingo steuern" in Kapitel 12, "Vektorformen und Bitmaps". Stattdessen sollte eine Verknüpfung zum Unterabschnitt "Grafikobjekte erstellen" im Abschnitt "Bitmapgrafiken mit Lingo steuern" bestehen.
Der Abschnitt "Was ist neu in Director 8" im Kapitel "Erste Schritte" sollte einen Link zum neuen Abschnitt "Timeout-Objekte erstellen" in Kapitel 11, "Parent-Skripts", enthalten.
Der Abschnitt "Was ist neu in Director 8" im Kapitel "Erste Schritte" enthält einen Eintrag zu mehreren Kurvenvektoren, der einen falschen Querverweis auf den Abschnitt "Vektorformen zeichnen" in Kapitel 12, "Vektorformen und Bitmaps", enthält. Richtig sollte auf den Unterabschnitt "Vektorform-Zeichenwerkzeuge verwenden" im Abschnitt "Vektorformen zeichnen" verwiesen werden.
Der Abschnitt "Was ist neu in Director 8" im Kapitel "Erste Schritte" enthält einen Eintrag zum Befehl "Veröffentlichen", der einen falschen Querverweis auf den Abschnitt "Shockwave-Filme erstellen" in Kapitel 17, "Filme zur Verteilung verpacken", enthält. Richtig sollte auf den Unterabschnitt "Standardeinstellungen für die Veröffentlichung verwenden" im Abschnitt "Filme zur Verteilung verpacken" verwiesen werden.
Der Abschnitt "Reihenfolge von Nachrichten in einem Film" im Kapitel "Skripts mit Lingo schreiben" enthält eine unklare Beschreibung des Zeitpunkts, zu dem das Ereignis startMovie stattfindet. Gegenwärtig heißt der Text wie folgt: "Dieses Ereignis findet im ersten abgespielten Bild statt." Tatsächlich findet das Ereignis startMovie nach dem Ereignis prepareFrame für Bild 1 und vor dem Ereignis enterFrame für Bild 1 des Films statt.
Der Abschnitt "Shockwave Audio und MP3-Audio mit Lingo abspielen" im Kapitel "Sound, Video und Synchronisation" sollte Verweise auf die folgenden im Lingo-Wörterbuch definierten Lingo-Begriffe enthalten: id3Tags, mpegLayer, currentChannel, currentTime, cuePointNames, cuePointTimes, isPastCuePoint, mostRecentCuePoint und on cuePassed().
Die Eigenschaft currentChannel wurde für Shockwave Audio-Sprites und -Darsteller hinzugefügt. Diese Eigenschaft zeigt die Nummer des gegenwärtig vom angegebenen SWA-Darsteller oder -Sprite verwendeten Soundkanals an. Dies ist hilfreich, da SWA-Darsteller als ihre Kanalzuweisung per Vorgabe 0 verwenden. Wenn der SWA-Darsteller abgespielt wird, macht Director (ausgehend bei Kanal 8 in Richtung Kanal 1) einen nicht benutzten Soundkanal ausfindig, den er dann dem Darsteller zuweist. Diese Eigenschaft kann getestet, aber nicht eingestellt werden.
Verwenden Sie zum Testen dieser Eigenschaft die folgende Syntax:
member(whichSWAMember).currentChannel
Im Abschnitt "Director verwenden" > "Filme im Internet abspielen" > "Filmabspieloptionen einstellen" heißt es, dass die Option "Abspielen, während Film geladen wird " im Dialogfeld "Modifzieren" > "Film" > "Abspielen" per Vorgabe aktiviert sei. In Director 8.5 ist diese Option jedoch per Vorgabe deaktiviert.

 
Bekannte Probleme

3D, Allgemein Fireworks Importer/Exporter Lingo Vektorformen
3D, Lingo Flash Asset Multiuser Server Verhalten
3D, Renderer Hohe ASCII-Zeichen QuickDraw-Formen Veröffentlichen
3D, Text Installation QuickTime  
Allgemein Japanisch RealMediaText  
Felder Koreanisch Shockwave  

 

 
3D, Allgemein

Es gibt ein Problem, das zu einer Beschädigung von Videodaten führen kann, die zwischen AGP-Grafikadaptern und AMD Athlon- oder AMD Duron-Prozessoren unter Microsoft Windows® 2000 gemeinsam genutzt werden. Informationen zur Behebung von AGP-Grafikproblemen und Systemabstürzen finden Sie hier: http://www1.amd.com/athlon/config
Das Zurücksetzen der Uhrzeit eines Partikelsystems im Shockwave3D-Viewer-Fenster bewirkt eine Implosion der Partikel.
Selbst nach dem Entfernen einer Kamera aus einer 3D-Welt erhalten Sie nach wie vor Ansichten von dieser Kamera.
Wenn ein 3D-Sprite von einem anderen Fenster überdeckt wird, wird die Bildratenleistung beeinträchtigt. Für die Wiedergabevorschau sollte der Vollbildschirmmodus verwendet werden. Dies kann auch dazu führen, dass komprimierter Sound bei der Wiedergabe abgehackt klingt.
Wenn Sie mithilfe des Shockwave 3D-Fensters die Position der Kamera in Bezug auf ein 3D-Text-Sprite ändern, führt das Einstellen der Kameratransformation zu einer Änderung der Position des gerichteten Lichts im Einklang mit der neuen Kameraposition. Dies bedeutet, dass das Sprite im Media-Fenster anders aussieht als auf der Bühne. Wenn Sie nicht wünschen, dass die Position des Lichts geändert wird, positionieren Sie mithilfe von Lingo den Textdarsteller um oder erstellen Sie Ihre eigenen Lichter.
Bei der Verwendung von resetWorld(), Lingo-Befehlen oder der Schaltfläche im Shockwave3D-Fenster im Zusammehang mit 3D-Text wird nur die Kamera des Sprites zurückgesetzt, nicht aber das Viewer-Fenster. Dieser Befehl setzt nur die Kamera zurück.
Eine im Eigenschafteninspektor vorgenommene Aktualisierung der 3D-Darstellereigenschaften cameraPosition und cameraRotation spiegelt sich nicht im Shockwave3D-Fenster wider, falls es geöffnet ist.
Wenn eine neue Textur auf ein Modell angewendet wird, das auch eine Reflection-Map aufweist, erscheint im Shockwave 3D-Fenster unter Umständen nur die Reflection-Map des Modells.

 
3D, Lingo

Tastaturereignisse können nicht in Filmskripts verarbeitet werden; sie müssen auf Sprite-Ebene erfasst werden, wenn ein 3D-Sprite vorhanden ist.
Es können nicht zuverlässig Modifizierer zu einem 3D-Text-Modell in einem Textdarsteller unter der Verwendung einer on beginSprite-Prozedur hinzugefügt werden. Eine Lösungsmöglichkeit besteht darin, das 3D-Textmodell in einen Shockwave 3D-Darsteller zu überführen oder statt on beginSprite ein anderes Ereignis zu verwenden.
Wenn Animationen fertig abgespielt sind, ihnen ein Befehl playNext() erteilt wurde oder sie sich in der Abspielliste (playList) befinden, kann im Shockwave3D-Fenster keine Vorschau angezeigt werden. Um dieses Problem zu beheben, klicken Sie auf die Schaltfläche resetWorld(), um den Modelldarsteller wiederherzustellen.
Wenn die Eigenschaft rotationReset von Knochen- oder Schlüsselbildanimationen auf einen anderen Wert als #all (Standard) eingestellt wird, werden Positionsänderungen, die unter Verwendung von positionReset erzeugt werden, relativ angewendet und nicht absolut. Außerdem gilt, dass wenn Sie positionReset auf TRUE setzen und für rotationReset einen anderen Wert als #all angeben, es zu unvorgesehenen Ergebnissen kommen kann.
Das Einstellen der Achse von transform.axisAngle, wenn der Winkel gleich 0 ist, ist wirkungslos.
Beim Hinzufügen des Modifizierers #keyframeplayer erscheinen unter Umständen nur bestimmte Teile eines Zweifüßermodells. Dieses Problem tritt nur auf, wenn ein Zweifüßermodell-Sprite nicht bei Bild 1, sondern bei einem anderen Bild beginnt. Wenn das Sprite bei Bild 1 beginnt, tritt dieses Problem nicht auf. Wenn Sie den Film zum zweiten Mal abspielen oder ihn anhalten, wird das Zweifüßermodell richtig dargestellt.
Wenn Sie einen Offsetwert außerhalb des Bereichs startTime bis endTime angeben, kann dies zu unvorhergesehenen Ergebnissen führen:
Wenn Sie einen Offsetwert kleiner als startTime angeben, kommt es zu einer Zeitverzögerung von startTime - Offset-Millisekunden vor Beginn der Animation.
Wenn Sie einen Offsetwert größer als endTime angeben, kommt es zur Startzeit startTime + (Offset - endTime).
Versuchen Sie nicht, einen 3D-Darsteller in einer on beginSprite-Prozedur vorauszuladen. Dies schlägt fehl, da die Mediadaten des Darstellers möglicherweise noch nicht geladen sind. Eine Lösungsmöglichkeit besteht darin, ihn in einer exitFrame-Prozedur vorauszuladen.
Die Normierung des position-Werts einer Transformationsmatrix, wie etwa mit transform.position.normalize(), ist nicht möglich. Dies gilt auch für alle Vektoreigenschaften wie beispielsweise die Richtung eines Partikelemitters.
Wenn der blendTime-Wert einer Knochenanimation auf eine negative Zahl eingestellt wird, wird die Animation unterbrochen. Wird der Wert auf Null gesetzt, treten die Animationen unter Umständen in der falschen Reihenfolge auf.
Mithilfe von member(whichCastmember).model(whichModel).update wird die Knochenstruktur des Modells aktualisiert; diese Aktualisierung wird jedoch nicht neu gezeichnet, sondern bewirkt nur, dass die Knochenstruktur an dem Simulationszeitpunkt aktualisiert wird, zu dem die aktuelle Prozedur betreten wird.
Auf dem Macintosh variiert camera.transform.position je nachdem, ob das Modell über loadFile() importiert wurde oder ob es eingefügt bzw. auf normale Weise importiert wurde.
Nach dem Löschen einer Textur, die als Hintergrund (backdrop) einer Kamera verwendet wurde, gibt die Quelle des Hintergrunds <void> zurück. Wird dieser Vorgang für eine Überlagerung (overlay) einer Kamera durchgeführt, kommt es jedoch zu einem Skriptfehler.
Ein Shader kann keinem Modell zugewiesen werden, das keine modelResource aufweist.
Bei Gitternetzprimitiven kann das Hinzufügen einer dritten Texturebene in einer Szene mit aktiviertem Nebel dazu führen, dass der Nebel seine Farbe ändert.
Auf dem Macintosh werden bei Verwendung von generateNormals mit der Option #smooth die Gitternetznormalen nicht richtig geglättet. Dies liegt daran, dass der OpenGL-Renderer keine Glanzlichtdaten produzieren kann.
Der Modifizierer #collision weist Einschränkungen im Hinblick auf die zulässigen Kollisionsmodi auf. Zulässige Kollisionsmodi:
#sphere/#sphere
#sphere/#box
#box/#box
#mesh/#mesh
Die übrigen Kombinationen werden wie folgt aufgelöst: #sphere/#mesh und #box/#mesh werden aufgelöst in #sphere/#mesh bzw. #box/#box.
Hinweis: Eine Begrenzungskugel (bounding sphere) ist größer als das Modell. Die Option #mesh/#sphere führt daher zu riesigen Kollisionsgitternetzen, was aller Wahrscheinlichkeit nach nicht in Ihrem Interesse ist.
Die Skalierung der Kameraansicht kann sich auf das Rendern von großen Modellen in der Szene auswirken. Skalieren Sie daher also nicht die Kamera oder eines ihrer Parent-Objekte.

 
3D, Renderer

Wenn OpenGL 1.2.1 auf der spanischen Version von Mac OS 8.6 installiert ist, stürzen alle Anwendungen, die OpenGL verwenden (einschließlich Director) ab.
Beim Umschalten von Millionen/Tausenden von Farben auf 256 Farben wird der Renderer auf #software gesetzt. Dies geht jedoch nicht aus dem active3Drenderer-Wert im Eigenschafteninspektor hervor - dort wird der zuletzt verwendete Renderer aufgeführt.
Nach der Installation von neuen Grafiktreibern unter Windows 2000 wird ein Neustart empfohlen, obwohl Windows 2000 nach der Installation oder der Aktualisierung von Treibern nicht unbedingt einen Neustart verlangt. Starten Sie Windows 2000 immer neu, damit die Registeränderungen wirksam werden und Director die Hardware richtig erkennen kann.
Vermeiden Sie die Änderung der Bildschirmfarbtiefe, während 3D-Inhalt aktiv ist.
Unter Windows 95 gibt getRendererServices().getHardwareInfo() möglicherweise falsche Daten zurück, wenn mehr als eine Karte im System installiert ist oder war.
Auf Windows-Computern, auf denen DirectX 7 installiert ist, werden Reflection-Maps und Diffuselight-Maps möglicherweise nicht richtig gerendert. Dies passiert, wenn Texturen in nicht aufeinanderfolgenden Texturebenen angewendet werden. Dieses Problem tritt bei einer Reihe von Produkten anderer Hersteller auf. Benutzern wird empfohlen, den jeweils neuesten Treiber von der Website des Grafikkartenherstellers herunterzuladen.
Die Verwendung des OpenGL-Renderers auf einem MacOS X im Classic-Modus ist nicht möglich.
Auf der Macintosh-Plattform erscheint Shockwave 3D im Authoring- oder Abspielmodus nicht auf dem zweiten Monitor, wenn die gleiche Anzeige auf zwei Monitoren dargestellt wird.
Wenn Sie beispielsweise Shockwave 3D-Filme für eine Präsentation auf einem Laptop- und einem weiteren Bildschirm simultan anzeigen möchten, müssen Sie in den Software-Renderer umschalten. Im Authoring-Modus erfolgt dies über das Register "Film" im Eigenschafteninspektor. Bei Browsern schalten Sie die Rendereinstellungen um, indem Sie bei gedrückter Strg-Taste klicken (Mac) oder rechtsklicken auf beliebigen Shockwave-Inhalt und dann den 3D-Renderer ändern.
Komplexe Polygon-Renderings können, je nachdem, wie nah oder weit die sichtbaren Objekte in der Szene entfernt sind und wie koplanar die Polygone sind, verzerrt wirken. Bei zunehmenden Unterschied zwischen dem Nah-/Fernebereich werden Pixelsortierungsprobleme beim Z-Puffer möglicherweise verstärkt. Ein praktischer Lösungsansatz besteht neben dem Eliminieren der oben genannten Bedingungen im Erhöhen des Wertes für camera.hither.

 
3D, Text

Director zeigt höchstens 65 3D-Textzeichen pro Sprite an.
Wenn Sie den tunnelDepth-Wert eines 3D-Text-Sprites ändern, während es sich dreht, ändert sich auch die Position der Kamera.
Wenn Sie den smoothness-Wert eines animierenden 3D-Text-Sprites ändern, bleibt Director hängen.
Wenn Sie zahlreiche Text-Sprites gleichzeitig in 3D umwandeln, kann es auf manchen Rechnern zum Stillstand oder Absturz kommen.
Wenn Sie die Begrenzungsbox von 3D-Text vergrößern, während das Shockwave3d-Fenster geöffnet ist, wird das 3D-Text-Sprite im Fenster größer gezoomt.
Die Piktogramme eines 3D-Textdarstellers und eines 2D-Textdarstellers sind identisch.
Wenn ein Zeichen als Würfel erscheint, sollten Sie seine Position oder die Ausrichtung des Textdarstellers ändern.

 
Verhalten

Wenn das Fernschreiber-Verhalten auf 2D- oder 3D-Text angewendet wird, kommt es bei Director unter Umständen zu einem Speicherfehler, falls die Textumbrucheigenschaft des Text-Sprites im Eigenschafteninspektor auf TRUE gesetzt ist.
Die Chat-Verhalten funktionieren nur, wenn die Sprite-Spannen der Schaltfläche "Anmelden" und des Feldes "Chat-Eingabe" sowohl die Anmelde- als auch die Präsentationsszene einschließen.

 
Felder

Wenn Sie die Mischung eines Feld- oder Schaltflächen-Sprites auf einen Wert unter 100 % einstellen, wird der Text des Sprites falsch angezeigt. Dieser Fehler tritt nur auf der Macintosh-Plattform auf.

 
Fireworks Importer/Exporter

Wenn Sie die Komprimierung für einen Bitmapdarsteller im Register "Bitmap" des Eigenschafteninspektors auf "JPEG" einstellen, wird der betreffende Darsteller im Fenster "Optimieren in Fireworks..." möglicherweise nicht automatisch auf "Format=JPEG" gesetzt. Wählen Sie in diesem Fall im Fenster "Optimieren in Fireworks..." manuell JPEG als Format.
Im Fireworks 4-Import-Xtra meldet der Eigenschafteninspektor fälschlicherweise, dass die Bit-Tiefe nach dem Importieren einer 24-Bit-Grafik 32 Bit beträgt. Richtig sollte es 24 Bit heißen. Dieser Fehler tritt nur auf Windows-Systemen auf.

 
Flash

In einem importierten Flash-Film wird selbst nach Anhalten des Flash-Sprites Sound abgespielt. Verwenden Sie die Lingo-Eigenschaft pausedAtStart, um sicherzustellen, dass der Darsteller des Sprites angehalten wird.
Wenn in einem Film extrem viele Flash 5-Darsteller auftreten, kann es bei der Wiedergabe des Films in einem Projektor zu Abstürzen kommen. Um dies zu vermeiden, stellen Sie sicher, dass im Dialogfeld "Projektoroptionen" die Option "Systemzwischenspeicher verwenden" aktiviert ist.
Bei Verwendung des Flash 5-Asset-Xtras werden Aktionen im eingebetteten Flash-Inhalt möglicherweise nicht in der richtigen Reihenfolge ausgewertet.

 
Allgemein

Auf dem Macintosh können die Eigenschaften rect oder drawRect in der Listenansicht des Eigenschafteninspektors nicht eingestellt werden.
Director stürzt ab, wenn ein Shockwave-Film nach dem Öffnen in einem "Film in einem Fenster" (MIAW) in das Drehbuch gestellt wird.
Wenn Sie für Ihren Film die JPEG-Komprimierung wählen, wird die Änderung auch auf extern verknüpfte Besetzungen übernommen. Diese Änderung wird durch Deaktivieren dieser Option nicht rückgängig gemacht; stattdessen müssen Sie diese Einstellung in jeder externen Besetzung manuell rückgängig nachen.
Projektoren, bei denen die Option "Im Hintergrund animieren" deaktiviert ist, verwechseln Aufruf- und Soundkanalinformationen, wenn sie den Fokus verlieren und dann neu erhalten.

 
Hohe ASCII-Zeichen

Bei französischen Standardtastaturen kommt es unter Windows zu Problemen mit der Tastenkombination Strg-Alt. Die Betätigung von AltGr+<beliebige Taste> hat keinerlei Auswirkung in einem MIAW. Bei deutschen und französischen Tastaturen erzeugt die Tastenkombination Strg-Alt in den Text-, Feld-, Skript- und Nachrichtenfenstern keine Sonderzeichen. Dieses Problem tritt nur bei der Anwendungserstellung auf.
Auf deutschen und französischen Macintosh-Systemen bewirken Zeichen wie "¨", Trema, Warenzeichen usw. bei der Verwendung von charToNum() möglicherweise andere Werte als auf Windows-Systemen. Dieses Problem kann auch auf englischen Systemen auftreten, wenn der Film auf einem Macintosh-System mit Unterstützung für hohe ASCII-Zeichen erstellt wurde.
Das Verhalten von Lingo-Code bei diakritischen Zeichen ist bei Verwendung der Funktion findPosNear() nicht einheitlich.

 
Installation

Wenn die Macromedia-Laufzeitbibliothek für Director 8.5 auf dem Macintosh in den Systemordner installiert wird, kann Director 7 nicht starten.
Wenn der Benutzer unmittelbar nach Installation des Shockwave-Plug-Ins 3D-Inhalt sehen möchte, ist eventuell ein Neustart des Systems erforderlich, obwohl er dazu nicht explizit aufgefordert werden. Dieses Problem wurde nur für einige wenige Windows-Systeme berichtet.

 
Japanisch

Auf japanischen Systemen akzeptieren bearbeitbare Felder nicht die erste Bestätigung eines Zeichenkandidaten beim Abspielen eines MIAWs. Drücken Sie einfach so lange die Leertaste, bis das Fenster ausgeblendet wird.
Die Lingo-Eigenschaft itemDelimiter kann nicht auf Doppelbyte-Zeichen eingestellt werden.
Auf dem Macintosh akzeptieren Sprite-Namen keine Doppelbyte-Zeichen im Besetzungsfenster, wenn es sich in der Listenansicht befindet.

 
Koreanisch

Koreanische Benutzer sollten wissen, dass Doppelbyte-3D-Text, der auf koreanischen Macintosh-Systemen erstellt wurde, nicht richtig angezeigt werden, wenn der Film auf koreanischen Windows-Systemen angezeigt wird. Damit die Zeichen richtig dargestellt werden, muss die Schriftart für den 3D-Text im Film eingebettet werden.
Koreanische Macintosh-Benutzer sollten wissen, dass das Extrudieren von koreanischem 3D-Text nur mit wenigen koreanischen Schriftarten möglich ist. Die koreanische Version von Director 8.5 lässt zum Extrudieren von 3D-Text nur regulär konturierte TrueType-Schriften und Type1-PostScript-Schriften zu. Das Extrudieren von koreanischem 3D-Text mit Fbit/Sbit-TrueType-Schriften und Type0/Type3/Type4-PostScript-Schriften ist nicht möglich.
Wenn der Filmpfad auf koreanischen Windows-Systemen mit Internet Explorer koreanische Zeichen enthält, kann der Shockwave-Film möglicherweise nicht geladen werden. Der Verzeichnisname mit dem Shockwave-Film sollte keine Doppelbyte-Zeichen enthalten.

 
Lingo

Die Verwendung von me.spriteNum in einer isOkToAttach-Prozedur führt zu einem Absturz. Verwenden Sie stattdessen die Callback-Parameter aSpriteType und aSpriteNum.
Beim Bezug auf die scriptInstanceList eines leeren Sprites werden die Verhalten für alle Sprites im betreffenden Kanal deaktiviert.
Die Funktion GotoNetPage öffnet keine lokale Datei in AOL 4 oder AOL 5.0. Sie funktioniert jedoch einwandfrei, wenn sich die Dateien auf einem HTTP-Server befinden.
Wenn Sie den Wert von keyPressed in einer keyDown-Prozedur testen, erhalten Sie nicht das unmittelbar darauffolgende keyUp-Ereignis.
Wenn Sie einen Punkt zu einem Quad hinzufügen, werden die letzten beiden Punkte des Quads entfernt.
Bei Aufruf von keypressed unmittelbar vor keycode gibt für the keycode falsche Werte zurück.
Das Einstellen des locZ-Wert eines Sprites führt dazu, dass das Sprite neu gezeichnet wird.
Auf dem Macintosh führt die Verwendung von setPixel() oder getPixel() für 2-Bit- oder 32-Bit-Grafiken dazu, dass Director blockiert.
Bei der Anwendungserstellung und in Projektoren wird nach dem Vorausladen eines Films in einem anderen Film die Prozedur on startMovie des vorausgeladenen Film zweimal ausgeführt.

 
Multiuser

Skripte, die mit createScript() an einem anderen Ort als dem Dispatcher erstellt wurden, müssen explizit benannt werden, damit sie debuggt werden können. Der Name sollte der Dateiname minus der Erweiterung sein.
UDP-Nachrichten in einer Größe über 12 KB, die zwischen Client und Server auf der gleichen Maschine gesendet werden, werden nicht empfangen (nur unter Windows). Der Client sendet die Daten fehlerfrei, aber der Server erhält sie nicht. Die Nachricht geht bei der internen Windows-Verarbeitung des UDP-Pakets verloren.
Beim Einstellen von sleepPeriod eines Threads mit Lingo kann der tatsächliche Wert von sleepPeriod den in Lingo übergebenen Wert beträchtlich übersteigen. Um dies zu vermeiden, rufen Sie ausdrücklich thread.sleep auf, statt sleepPeriod zu benutzen.

 
Veröffentlichen

Wenn ein 3D-Darsteller vorhanden ist, wird das Pulldownmenü "Skalierung" im Dialogfeld "Veröffentlichungseinstellungen" deaktiviert. Um dies zu verhindern, ändern Sie das HTML-Format von "3D-Inhalt laden" in ein beliebiges anderes Format. Der Film zum Laden von 3D-Inhalten sollte nach Möglichkeit nicht auf "Skalierung" eingestellt werden, da dies auf dem Macintosh zu Problemen beim Neuzeichnen führen kann.
Wenn die Veröffentlichungseinstellungen auf "Ausfüllendes Skalieren" eingestellt sind, wird bewirkt, dass streamende QuickTime-Filme beim Start und beim Verschieben oder Vergrößern/Verkleinern des Browsers entladen und neugeladen werden und ohne Sound abgespielt werden.
Shockwave-Filme mit 3D-Inhalt sollten eine RGB-Bühnenfarbe verwenden, keine Palettenindexfarbe.
Wenn Sie einen der Loader-Filme im Ordner mit den Veröffentlichungsvorlagen im Director-Anwendungsordner verwenden, wird Ihr Director-Film nicht gestreamt, selbst wenn im Dialogfeld "Modifizieren" >"Film">"Abspielen" ausdrücklich Streaming angegeben wurde. Dies ist die beabsichtigte Funktionalität der Loader-Filme.

 
QuickDraw-Formen

Nicht gefüllte QuickDraw-Form-Sprites erscheinen auf der Bühne leer, wenn Sie sie erst erstellen, nachdem Sie Text-Sprites erstellt haben.

 
QuickTime

QuickTime wird nicht in einem Film mit einem Shockwave 3D-Darsteller abgespielt, wenn Sie den DirectX 7.0-Renderer verwenden. Dies liegt an einem Konflikt zwischen DirectX und QuickTime. Wir arbeiten mit Apple und Microsoft an einer Lösung für dieses Problem.

 
RealMedia

Auf Macintosh-Rechnern, die die Mindestsystemvoraussetzungen für die Wiedergabe erfüllen, werden RealMedia-Inhalte nicht immer abgespielt.
Die Lingo-Funktion realPlayerVersion() ruft die Build-Nummer der im System installierten RealPlayer-Software ab. Die RealPlayer-Versionsnummer wird allerdings nicht abgerufen.
Wenn zu einem bestimmten Zeitpunkt mehr als ein RealMedia-Sprite abgespielt wird, wird durch Stummschalten eines Sprites der Ton aller anderen Sprites ebenfalls deaktiviert.
Wenn Sie mit Internet Explorer unter Windows arbeiten, kann es beim Öffnen von zwei oder mehr Browserfenstern, die Shockwave-Filme mit RealMedia enthalten, dazu kommen, dass die Filme nicht richtig abgespielt werden.
Bei RealMedia-Sounds, die in einem Director-Soundkanal abgespielt werden, sind sound().elapsedTime und member().currentTime nicht synchron. Die Eigenschaft currentTime ist in diesem Fall präziser.
Der Ton eines RealMedia-Darstellers wird in einem MIAW ausgeschaltet, wenn Sie in der Authoring-Umgebung auf "Stop" klicken.

 
Shockwave

Wenn die SmartDownload-Funktion von Netscape aktiviert ist, schlägt die Installation von Shockwave auf bestimmten Windows-Systemen unter Umständen fehl. Durch Deaktivieren dieser Funktion in den Browservoreinstellungen wird dieses Problem gelöst.

 
Text

Die Funktionen zum horizontalen und vertikalen Kippen funktionieren bei Text nicht richtig, wenn sich der Eigenschafteninspektor im Listenmodus befindet.

 
Vektorformen

Vektorformen in verknüpften Director-Filmen reagieren nicht auf Änderungen der Vektorliste, die mithilfe des Befehls tell im Hauptfilm vorgenommen wurden. Eine Lösungsmöglichkeit besteht darin, mithilfe des Befehls tell eine globale Variable im verknüpften Film einzustellen und diese Globale dann bestimmen zu lassen, wann vertexList geändert werden soll.


Macromedia

04/02/01

Dokumentation, Korrekturen, Änderungen, Lingo, 3D, Versionshinweise