DE20121798U1 - System zur frei spezifizierbaren Echtzeit-Steuerung - Google Patents
System zur frei spezifizierbaren Echtzeit-SteuerungInfo
- Publication number
- DE20121798U1 DE20121798U1 DE20121798U DE20121798U DE20121798U1 DE 20121798 U1 DE20121798 U1 DE 20121798U1 DE 20121798 U DE20121798 U DE 20121798U DE 20121798 U DE20121798 U DE 20121798U DE 20121798 U1 DE20121798 U1 DE 20121798U1
- Authority
- DE
- Germany
- Prior art keywords
- sound
- parameterized
- control signals
- pattern
- patterns
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H1/00—Details of electrophonic musical instruments
- G10H1/0008—Associated control or indicating means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2220/00—Input/output interfacing specifically adapted for electrophonic musical tools or instruments
- G10H2220/091—Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith
- G10H2220/096—Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith using a touch screen
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2220/00—Input/output interfacing specifically adapted for electrophonic musical tools or instruments
- G10H2220/155—User input interfaces for electrophonic musical instruments
- G10H2220/315—User input interfaces for electrophonic musical instruments for joystick-like proportional control of musical input; Videogame input devices used for musical input or control, e.g. gamepad, joysticks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2220/00—Input/output interfacing specifically adapted for electrophonic musical tools or instruments
- G10H2220/155—User input interfaces for electrophonic musical instruments
- G10H2220/321—Garment sensors, i.e. musical control means with trigger surfaces or joint angle sensors, worn as a garment by the player, e.g. bracelet, intelligent clothing
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2220/00—Input/output interfacing specifically adapted for electrophonic musical tools or instruments
- G10H2220/155—User input interfaces for electrophonic musical instruments
- G10H2220/401—3D sensing, i.e. three-dimensional (x, y, z) position or movement sensing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- General Physics & Mathematics (AREA)
- Electrophonic Musical Instruments (AREA)
Description
HINTERGRUND UND EINSATZBEREICH DER ERFINDUNG
Die Erfindung bezieht sich auf Systeme, d.h. Erzeugnisse, zur grafischen Visualisierung und Echtzeit-Ansteuerung von virtuellen und/oder realen Objekten zur Erzeugung und/oder Beeinflussung von Bild- bzw. Tonsequenzen, mit dessen Hilfe auf einem Bildschirm dargestellte bzw. reale Objekte wie beispielsweise Roboter oder dergleichen durch interaktive Steuerbefehle eines Benutzers in ihren Eigenschaften und/oder Aktionen auf eine komfortable und zuverlässige Weise (quasi) in Echtzeit manipuliert bzw. gesteuert werden können. Insbesondere bezieht sich die vorliegende Erfindung auf Systeme zur Animation und Bewegungssteuerung eines dreidimensionalen (realen oder virtuellen) Gelenk-Objekts in Echtzeit, auf Systeme zur frei spezifizierbaren Steuerung von animierten Grafiken, Video- bzw. Audiodaten mit Hilfe von optischen bzw. akustischen Parametern sowie auf ein System zur Echtzeit-Bewegungssteuerung von virtuellen und/oder realen Objekten.
Es sei angemerkt, dass „Objekte" im Sinne der Erfindung virtuelle Objekte, aber auch reale Objekte wie Roboter oder andere ferngesteuerte Objekte mit mehreren Freiheitsgraden sein können.
Im Rahmen der interaktiven Kommunikation zwischen Mensch und Maschine treten häufig Probleme auf, die auf der ungenügenden Anpassung der Maschine an die Eigenschaften der Aufnahme, Verarbeitung und Ausgabe von Information durch den menschli-
P 24392 DE
t ·
• ·
chen Anwender beruhen. Diese Fehlanpassung kann einerseits zu einer vom Anwender nicht mehr zu bewältigenden Informationsflut führen, vor allem wenn mehrere Aufgaben erledigt werden müssen. Andererseits kann auch eine Unterforderung des Anwenders, beispielsweise bei einer hochautomatisierten Anlage, bei der dem Menschen lediglich eine Kontrollfunktion zukommt, bewirken, dass durch die Monotonie der Arbeitssituation ein Leistungsabfall eintritt und Störfälle infolge mangelnder Übung der Vorgehensweise in solchen Situationen nicht mehr beherrscht werden. Auch die mangelnde Berücksichtigung von Kenntnissen und Ausbildungsstand des Benutzers einer Maschine sind hier zu nennen. Noch immer wird in vielen Fällen das menschliche Verhalten, zum Beispiel bei der Auswahl, Bewertung und Verknüpfung von Information, bei der Entscheidungsfindung, beim Problemlösen sowie bei der Planung und Ausführung von Handlungen, nur unzureichend berücksichtigt und unterstützt, wenn es sich um die Auslegung technischer Systeme handelt.
Die derzeit verwendeten Systeme zur Darstellung und Steuerung von Objekten in virtuellen Umgebungen berücksichtigen zwar in zunehmendem Maße die Fähigkeiten des Menschen zur Aufnahme und Verarbeitung von Information, jedoch weisen sie einen entscheidenden Nachteil auf: Bei der Eingabe von Steuerbefehlen zur direkten Beeinflussung der dargestellten Szene ist der Benutzer nach wie vor auf herkömmliche Methoden zur manuellen Eingabe von Information angewiesen, wie zum Beispiel über Maus, Trackball, Joystick, Grafiktablett mit Griffel oder Touchscreen. Die hierbei notwendigen Eingabemechanismen müssen vom Benutzer erst erlernt werden, um auch in einer angemessenen Reaktionsgeschwindigkeit ausgeführt werden zu können. Dagegen werden die angeborenen bzw. bereits vorhandenen erlernten Fähigkeiten des Menschen zur Kommunikation mittels akustischen Signalen (z.B. Sprache) bzw. optischen Signalen (z.B. Mimik, Gestik, Gebärden und Bewegungen) bei der Eingabe
P 24392 DE
von Information zur 'Steuerung von Objekten nur unzureichend berücksichtigt.
Für die Anpassung technischer Systeme an den Menschen ist somit Vorwissen über seine Eigenschaften, seine Verhaltensmuster, seine Fertigkeiten und seinen Kenntnisstand notwendig. Beim Austausch von Informationen zwischen einem Benutzer und einem Informationssystem interessieren dabei insbesondere die sensorischen, kognitiven und motorischen Eigenschaften des Menschen.
Auf der Seite der durch die Sinneskanäle vorgegebenen sensorischen Eigenschaften des Menschen werden von herkömmlichen Maschinen und Geräten zur Ausgabe von Information im Wesentliehen die folgenden Wahrnehmungskanäle angesprochen:
- der visuelle Kanal (Augen) durch optische Signale,
- der auditive Kanal (Ohren) durch akustische Signale und
- der taktile Kanal (Tastsinn) durch haptische Signale.
Nach der Verarbeitung der Signale im Gehirn (Kognition) stehen auf der Seite der durch die Ausgabekanäle vorgegebenen motorischen Eigenschaften des Menschen im Wesentlichen folgende Kanäle zur Verfügung:
- die Arm-, Hand- und Finger- bzw. Bein- und Fußmotorik sowie Körper-, Kopf-, Augen- oder Mundbewegungen, also physikalische Bewegungen, Gebärden, Gestik und Mimik zur Erzeugung von mechanischen bzw. optischen Signalen,
- die Sprachmotorik zur Erzeugung von akustischen Signalen.
Über diese Kanäle können Signale in ein Informationssystem eingegeben werden, um eine gewünschte Aktion des Systems auszulösen.
• ·
• ·
• *
P 24392 DE
♦· <
Ein ideales Medium zur Kommunikation zwischen einem Benutzer und einem Informationssystem sollte sowohl auf die sensorischen und perzeptuellen als auch auf die motorischen Fähigkeiten sowie auf die spezifischen Eigenschaften des menschlichen Benutzers abgestimmt sein. Dabei sollte die Information so strukturiert sein, dass eine optimale Übereinstimmung zwischen der Repräsentation der ausgegebenen Information und dem mentalen Modell des Benutzers erzielt wird: Werden die dem Benutzer anzuzeigenden Informationen in einer Weise dargeboten, dass zum Beispiel sein räumliches Wahrnehmungsvermögen angesprochen wird, kann der Benutzer mit erstaunlich komplexen Informationsmengen pro Zeiteinheit umgehen. Ebenso sollte das Informationssystem in der Lage sein, möglichst viele Arten der von einem Benutzer abgesetzten Information aufzunehmen, zu verstehen und zu verarbeiten und in entsprechende Aktionen umzusetzen. Damit ist der Vorteil verbunden, dass der Benutzer effizienter und schneller auf neue Ereignisse und Situationen reagieren kann. Benutzerfreundlichkeit und Aufgabenangemessenheit sind somit typische Merkmale, über die ein solches ideales Kommunikationsmedium verfügt. Diese Merkmale können sich wie folgt äußern:
- Übereinstimmung zwischen Art, Umfang und Ausgabegeschwindigkeit und Präsentation der ausgegebenen Information mit den sensorischen Eigenschaften des menschlichen Benutzers,
- Berücksichtigung aller Informationskanäle des Benutzers bei der Aufnahme, Erkennung und Interpretation empfangener Steuersignale des Benutzers,
- leichte Erlernbarkeit und intuitive Bedienbarkeit des Mediums ,
P 24392 DE
- hohe Bandbreite der Informationsübermittlung zum Gehirn und hoher Durchsatz der Information,
- dynamische Adaption der Applikation an die individuellen Eigenschaften, Fähigkeiten, Aufgaben, Arbeits- und Organisationstechniken des Benutzers,
- Verwendung einer natürlichen Interaktionssprache mit hohem semantischen Inhalt,
- Zuverlässigkeit, Robustheit und Wartbarkeit des Mediums,
- soziale Akzeptanz des Mediums in der Bevölkerung,
- Berücksichtigung gesundheitlicher, ergonomischer und sicherheitsrelevanter Aspekte etc.
Das Ziel der Entwicklung von geeigneten Schnittstellen zwischen Mensch und Maschine ist es, von den Eigenschaften der menschlichen Kommunikationskanäle und Fertigkeiten auszugehen, um Geräte, Interaktionstechniken und Schnittstellen bereitzustellen, die eine effektive wechselseitige Kommunikation über diese Kanäle gewährleisten. Um dieses Ziel zu erreichen, sind sogenannte "Virtuelle Realitäten" (VR) besonders geeignet. Unter dem Begriff "Virtuelle Realität" (VR) versteht man die computerbasierte Erzeugung einer intuitiv wahrnehmbaren oder empfindbaren Szene, bestehend aus ihrer grafischen Darstellung und den Interaktionsmöglichkeiten für den Benutzer. Eine virtuelle Umgebung ermöglicht einem Benutzer Zugriff zu Informationen, die andernfalls am gegebenen Ort oder zur gegebenen Zeit nicht verfügbar wären. Sie stützt sich auf natürliche Aspekte der menschlichen Wahrnehmung, indem sie visuelle Information in drei räumlichen Dimensionen einsetzt. Diese Information kann beispielsweise gezielt ver-
P 24392 DE
6
ändert oder mit weiteren sensorischen Reizen angereichert werden. Wesentliche Voraussetzungen sind dabei die Kontrolle der Perspektive in Echtzeit und die Möglichkeit der aktiven Einflussnahme auf die dargestellte Szene durch den Benutzer des Systems.
ändert oder mit weiteren sensorischen Reizen angereichert werden. Wesentliche Voraussetzungen sind dabei die Kontrolle der Perspektive in Echtzeit und die Möglichkeit der aktiven Einflussnahme auf die dargestellte Szene durch den Benutzer des Systems.
Bei der Navigation durch virtuelle Umgebungen kann der Benutzer die für ihn natürliche Art der Steuerung einsetzen. Dies können beispielsweise entsprechende Arm- oder Beinbewegungen, Bewegungen zum Positionieren des Kopfes bzw. der Augen, Drehbewegungen des Körpers oder auf ein Objekt hingerichtete Bewegungen sein. Durch den Einsatz bereits vorhandener Fertigkeiten des Benutzers zur Steuerung kann die kognitive Belastung während der Interaktion zwischen Mensch und Maschine reduziert werden. Dadurch kann die Bandbreite der Kommunikation zwischen Mensch und Maschine erhöht und die Bedienbarkeit der Maschine verbessert werden. Während bei den herkömmlichen Formen der Mensch-Maschine-Kommunikation die Steuerung der Maschine kommandoorientiert erfolgt, müssen bei der Steuerung von Objekten in virtuellen Umgebungen keine spezifischen Kommandos neu erlernt und eingesetzt werden: Der Computer "beobachtet" den Benutzer passiv und reagiert in angemessener Weise auf Augen-, Kopf- und/oder Handbewegungen des Benutzers unter Echtzeitbedingungen.
Die Manipulation der Eigenschaften und Beeinflussung der Aktionen von Objekten einer dargestellten Szene setzt ein kompliziertes Zusammenspiel von Sensorik, kognitiver Verarbeitung und Motorik voraus, auf das viele Faktoren einwirken (individuelle Verhaltensmuster und Fähigkeiten, Erfahrungen, Umwelteinflüsse etc.). Bei Interaktionen in einer virtuellen Welt kommen noch zusätzliche Schwierigkeiten hinzu. Zur Steuerung, Manipulation bzw. Beeinflussung von Objekten ist insbesondere eine reflexartige bzw. kognitive sensorisch-motorisehe Rückkopplung wichtig, die beispielsweise von Rezeptoren
P 24392 DE
in der Haut, kinästhetischen Empfindungen, dem Gleichgewichtssinn sowie visuellen und/oder akustischen Empfindungen stammt. Dabei ergibt sich in vielen Fällen eine notwendige Redundanz, die bei VR-Applikationen nicht immer gegeben ist. Aufgrund der oft unzureichenden sensorischen Rückkopplung bei VR-Applikationen wird zudem das Erlernen motorischer Fertigkeiten erschwert.
Bei den handelsüblichen VR-Applikationen unterscheidet man Systeme, bei denen der Benutzer vollständig in die virtuelle Umgebung integriert ist (engl.: "Immersion") und Systeme, die nur ein "Fenster" zur virtuellen Realität darbieten. Neben den bekannten Formen der Mensch-Maschine-Kommunikation wie
- Direktmanipulationen von Objekten durch manuelle feinmotorische Operationen (Zeigen, Berühren, Greifen, Bewegen, Festhalten etc.),
- formalen Interaktionssprachen (Programmiersprachen, Kommandosprachen und formale Abfragesprachen), - natürlichsprachlicher Interaktion,
- gestischer Interaktion mittels nonverbaler symbolischer Kommandos (Mimik, Gestik, Gebärden, Bewegungen) sowie
- hybriden aufgabenorientierten Interaktionsformen
kann man virtuelle Realitäten auch als eine neue Form der Mensch-Maschine-Kommunikation auffassen. Wie der Name "Virtuelle Realität" schon andeutet, ist hierfür eine gewisse Realitätstreue der Darstellung notwendig: Dem Anwender soll diejenige sensorische Information dargeboten werden, die zur Bearbeitung einer Aufgabe oder zum Erreichen eines Ziels erforderlich ist.
Die visuelle Wahrnehmung liefert nicht nur Informationen über die Lage, Bewegung, Form, Struktur, Kontur, Textur, Farbe
P 24392 DE
8
bzw. Musterung von Objekten etc., sondern auch Informationen über die relative Körperstellung des Betrachters und dessen Bewegungen sowie über die Beschaffenheit der dreidimensionalen Umgebung. Synthetisch generierte Umgebungen können dabei realistischer gestaltet werden, wenn möglichst viele der in natürlichen Umgebungen auftretenden Informationen (Bewegungsparallaxe, Fluchtpunkte der perspektivischen Darstellung, räumliche Tiefenwirkung und Plastizität, Beleuchtung und Schattenwurf, Verdeckung, Glanzwirkung, Spiegelungseffekte und diffuse Reflexion etc.) simuliert werden. Wie viele und welche Informationen präsentiert werden sollen, hängt von der jeweiligen Aufgabenstellung ab. Die Unterschiede zwischen realer und virtueller Welt bestimmen, als wie realistisch die Simulation wahrgenommen wird.
bzw. Musterung von Objekten etc., sondern auch Informationen über die relative Körperstellung des Betrachters und dessen Bewegungen sowie über die Beschaffenheit der dreidimensionalen Umgebung. Synthetisch generierte Umgebungen können dabei realistischer gestaltet werden, wenn möglichst viele der in natürlichen Umgebungen auftretenden Informationen (Bewegungsparallaxe, Fluchtpunkte der perspektivischen Darstellung, räumliche Tiefenwirkung und Plastizität, Beleuchtung und Schattenwurf, Verdeckung, Glanzwirkung, Spiegelungseffekte und diffuse Reflexion etc.) simuliert werden. Wie viele und welche Informationen präsentiert werden sollen, hängt von der jeweiligen Aufgabenstellung ab. Die Unterschiede zwischen realer und virtueller Welt bestimmen, als wie realistisch die Simulation wahrgenommen wird.
Die visuelle Information muss zur Realisierung virtueller Realitäten durch einen Computer simuliert werden. Dabei sind ähnliche Aspekte relevant wie in der Malerei. Bei der computergestützten Simulation dreidimensionaler Welten wird üblicherweise die Projektion einzelner Lichtstrahlen simuliert. Ausgangspunkt einer solchen Simulation ist die Spezifikation der zu simulierenden Umgebung. Dazu müssen die einzelnen Objekte mit ihren Eigenschaften und ihrer Lage festgelegt werden. Zur Visualisierung werden dann die Intensitäten einzelner Bildpunkte berechnet und auf das Ausgabemedium projiziert .
Mit Hilfe dieser Simulationen lassen sich völlig neue Arten des Lernens und Übens realisieren (Beispiele: Fahrzeug- bzw. Flugzeugsimulator), andererseits wird dabei immer auch von bestimmten Aspekten der realen Welt abstrahiert. VR-Applikationen bewirken daher gleichzeitig eine Anreicherung und eine Einschränkung der Erfahrungsmöglichkeiten des Anwenders.
P 24392 DE Φ. .. .» .... ·* *«·;
9
Grundsätzlich bestehen VR-Systeme aus Sensoren und Aktoren sowie deren Kopplung. Wichtige Hardware-Bestandteile sind unter anderem folgende:
Grundsätzlich bestehen VR-Systeme aus Sensoren und Aktoren sowie deren Kopplung. Wichtige Hardware-Bestandteile sind unter anderem folgende:
- "Displays" zur Präsentation der virtuellen Umgebung: Im Rahmen der visuellen Präsentation kommen heute vor allem Monitore, "Head Mounted Displays" (HMD), "Binocular Omni-Oriented Monitors" (BOOM) und Projektionssysteme; verwendet werden aber auch auditive bzw. taktile Displays, welche auf akustische bzw. manuelle Benutzereingaben reagieren.
- Positionierungs- und Orientierungssysteme zur Erfassung von Standort und Perspektive des Benutzers: Hierbei wird unterschieden zwischen der Bestimmung der absoluten Position (engl: "Position Tracking") und der Messung der Beugung von Gelenken (engl.: "Angle Measurement"). Zum Einsatz kommen elektromagnetische, kinematische, akustische, optische sowie bildverarbeitende Prozeduren.
- Interaktions- und Manipulationssysteme zum Agieren und Reagieren des Anwenders in der virtuellen Umgebung: Hierfür werden Zeigegeräte (2D- bzw. 3D-Mäuse, -Trackballs, -Joysticks etc.) bzw. taktile Geräte (Touchscreens, elektromagnetische Grafiktabletts mit Griffel etc.) verwendet; auch sogenannte "Datenhandschuhe" mit Beugungs- und Drucksensoren werden in zunehmendem Maße eingesetzt. Darüber hinaus ist auch Sprachsteuerung in diesem Zusammenhang zu nennen.
- Berechnungssysteme und Software zur Erzeugung der virtuellen Umgebung unter EchtZeitanforderungen.
- Netzwerke zur Integration verschiedener Benutzer, durch die sich neue Formen der Zusammenarbeit entwickeln können.
P 24392 DE
10
Die verschiedenartigen technischen Varianten von helm- bzw. kopfbasierten Systemen zur Visualisierung virtueller Realitäten werden im englischen Sprachgebrauch zusammenfassend als "Visually Coupled Systems" (VCS) bezeichnet. Sie bestehen aus den folgenden wichtigen Komponenten:
Die verschiedenartigen technischen Varianten von helm- bzw. kopfbasierten Systemen zur Visualisierung virtueller Realitäten werden im englischen Sprachgebrauch zusammenfassend als "Visually Coupled Systems" (VCS) bezeichnet. Sie bestehen aus den folgenden wichtigen Komponenten:
1.einem am Kopf bzw. Helm befestigtes Display,
2.einem Gerät zum Bestimmen der Kopf- und/oder Blickbewegungen des Anwenders,
3.einer Quelle visueller Information, die von der Kopf- und/oder Blickrichtung des Anwenders abhängt.
Beim Einsatz eines derartigen Systems für VR-Applikationen können sowohl Informationen aus der realen als auch aus der virtuellen Umgebung gleichzeitig dargeboten werden. Man spricht dabei von "See-Through Displays" für die Darstellung von angereicherten Realitäten.
Die Verfolgung von Kopfbewegungen ist ein wichtiger Bestandteil von VR-Applikationen. Üblicherweiser werden Position und Orientierung des Kopfes im Raum ermittelt, fortgeschrittene Systeme können außerdem die Blickrichtung verfolgen. Die meisten Systeme setzen dazu entweder Ultraschall, magnetische oder Lichtenergie zur Kommunikation zwischen den am Kopf angebrachten Sendern und den Empfängern ein. Wichtige technische Daten, die bei der Auswahl dieser Systeme eine Rolle spielen, sind:
- die Anzahl der Freiheitsgrade für die Bewegungsrichtungen, welche registriert und verfolgt werden können,
- der erfassbare Winkelbereich,
- die statische Genauigkeit (Erschütterungsempfindlichkeit) ,
P 24392 DE
- das Auflösungsvermögen,
- die Zuverlässigkeit,
- der Datendurchsatz und die Bildschirm-Abtastfrequenz,
- die Schnittstelle zum Computer sowie - weitere Performanzaspekte.
VR-Applikationen lassen sich in einer Reihe von unterschiedlichen Bereichen in der Praxis erfolgreich anwenden. Im Folgenden werden einige Anwendungsmöglichkeiten beispielhaft skizziert.
- Einsatz im Ausbildungsbereich: Durch das Erlernen des Umgangs mit (virtuellen) Objekten, interaktive Demonstrationen, Visualisierung abstrakter Konzepte, virtuelles Training des Verhaltens in gefährlichen Situationen, virtuelle Erforschung entfernter Orte oder Epochen können Wissen vermittelt, kreative Fertigkeiten geschult und Verhaltensmuster trainiert werden.
- Einsatz beim Fahr- und Flugtraining in entsprechenden Simulatoren: Durch den Einsatz von Simulatoren kann das Verhalten insbesondere in NotSituationen geschult werden.
- Einsatz im Bereich von Computerspielen: Durch die Möglichkeit der Navigation durch eine virtuelle Szene und die Möglichkeit der gezielten Steuerung und Beeinflussung virtueller Objekte entsteht ein realitätsnaher Eindruck, wodurch die Attraktivität eines Computerspiels für den Benutzer wesentlich erhöht werden kann.
Die heute verfügbaren Technologien zur Eingabe von Information in ein datenverarbeitendes System lassen sich nach den verwendeten Sensoren in vier Gruppen einteilen:
P 24392 DE
!.mechanische Eingabesysteme (z.B. Tastaturen, Mäuse, Trackballs und Joysticks),
2.elektrische Eingabesysteme (z.B. taktile Displays und Grafiktabletts) ,
3.optische Eingabesysteme (z.B. Lichtgriffel) und
3.optische Eingabesysteme (z.B. Lichtgriffel) und
4.akustische Eingabesysteme (z.B. Spracheingabe- und Sprachinterpretationssysteme).
Im Folgenden soll auf die nach dem heutigen Stand der Technik gebräuchlichen Hilfsmittel zur Eingabe von Information, die zur Steuerung von Objekten im Bereich von VR-Applikationen eingesetzt werden, kurz eingegangen werden.
Herkömmliche Eingabesysteme wie Tastaturen, Mäuse, Trackballs als auch Joysticks sind heute weit verbreitet. Sie werden verwendet, um Positionsmarken (engl.: "Cursors"), Mauszeiger etc. zu steuern, um beispielsweise durch eine virtuelle Szene navigieren zu können oder virtuelle Objekte auf dem Bildschirm zu bewegen. Der Nachteil dieser Eingabesysteme ist, dass sie eine Ablagefläche (also einen festen Standplatz) benötigen, um in effizienter Weise bedient werden zu können.
Mit einem Touchscreen dagegen ist es möglich, direkt auf Objekte, die auf dem Bildschirm abgebildet sind, mit dem Finger zu zeigen, ohne weitere platzraubende Zusatzgeräte auf dem Schreibtisch zu benötigen. Niedrig auflösende Touchscreens weisen 10 bis 50 Positionen in waagerechter und senkrechter Richtung auf und benutzen eine horizontale und vertikale Reihe von Infrarot-Leuchtdioden und Fotosensoren, um ein Gitter von unsichtbaren Lichtstrahlen unmittelbar vor dem Bildschirm aufzubauen. Bei einer Berührung des Bildschirms werden sowohl vertikale als auch horizontale Lichtstrahlen unterbrochen. Aus dieser Information kann die aktuelle Fingerposition ermittelt werden.
• ·
• ·
P 24392 DE
Eine andere bekannte Ausführungsform berührungssensitiver Informationseingabegeräte ist das kapazitiv gekoppelte Touch-Panel. Dieses liefert eine Auflösung von ca. 100 Positionen in jeder Richtung. Wenn ein Benutzer die leitfähig beschichtete Glasplatte des Touchscreens mit einem Finger berührt, kann aufgrund der Impedanzänderung die aktuelle Fingerposition ermittelt werden. Andere hochauflösende Panels verwenden zwei minimal voneinander entfernte, transparente Schichten. Eine davon ist leitfähig beschichtet, die andere mit einem Widerstandsmaterial beschichtet. Durch den Anpressdruck des Fingers berühren sich diese beiden Lagen, und durch Messung des daraus resultierenden Spannungsabfalls kann dann die aktuelle Fingerposition ermittelt werden. Eine niedriger auflösende und billigere Variante dieser Technologie verwendet anstelle dieser Schichten ein Gitter von feinen Drähten.
Nach dem Stand der Technik sind heute verschiedene Lösungen für das Problem der Echtzeit-Bewegungssteuerung virtueller Objekte verfügbar, wobei jede dieser Lösungen für einen speziellen Anwendungszweck optimiert ist. Mit jeder dieser Lösungen sind daher bestimmte Einschränkungen verbunden. Um einige der wichtigsten dieser Lösungen ansatzweise erklären zu können, ist es notwendig, kurz auf ihre wichtigsten Aspekte einzugehen.
Eine Möglichkeit zur Echtzeit-Bewegungssteuerung virtueller oder realer Objekte hat sich in letzter Zeit dadurch ergeben, dass Eingabegeräte für Computer bekannt wurden, die die gleichzeitige Eingabe von Ansteuersignale mehrerer, voneinander unabhängiger Freiheitsgrade ermöglichen. Die dadurch geschaffenen Möglichkeiten übersteigen bei weitem diejenigen, die beispielsweise bei der Verwendung einer Maus bestehen, die lediglich zweidimensional (z.B. auf der Ablagefläche eines Schreibtischs) gesteuert werden kann. Zwar ist es auch bekannt, eine Maus beispielsweise mit zusätzlichen Schaltern
P 24392 DE ..
• ·
14
zu versehen, indessen haben diese Schalter den Nachteil, dass sie nicht die Eingabe von Analogdaten ermöglichen, sondern vielmehr auf Binärdaten (Ein/Aus) beschränkt sind.
zu versehen, indessen haben diese Schalter den Nachteil, dass sie nicht die Eingabe von Analogdaten ermöglichen, sondern vielmehr auf Binärdaten (Ein/Aus) beschränkt sind.
Aus dem Stand der Technik sind auch verschiedene Eingabegeräte bekannt, die analoge Ansteuersignale von verschiedenen, voneinander unabhängigen Freiheitsgraden erzeugen können, wobei jedes dieser Analogsignale somit als Parameterwert einer Ansteuerung verwendet werden kann. Beispielsweise ist aus der Patentschrift US-A-5,757,360 ein eiförmiges Eingabegerät für Computer bekannt, das durch eine Hand des Benutzers frei im Raum bewegt werden kann, seine momentanen Positionen, Bewegungsrichtungen, Geschwindigkeiten und Beschleunigungen ermittelt und diese kinematischen Daten drahtlos zu dem Computer überträgt. Dabei wird ein analoger Bewegungsablauf in Form eines Bewegungsmusters identifiziert, woraus Bewegungsbefehle abgeleitet und in eine animierte Grafikdarstellung umgesetzt werden. Die Bewegungsmuster werden mit Hilfe eines Mustererkennungsalgorithmus automatisch erkannt. Zusätzlich werden Steuerbefehle erzeugt. Der Nachteil dieses Verfahrens besteht darin, dass es nicht frei spezifizierbar ist, da Bewegungsabläufe des Benutzers, die durch das Eingabegerät analog erfasst werden, korrespondierenden Bewegungsabläufen von gespeicherten Bewegungssequenzen einer animierten Grafikdarstellung zugeordnet werden und nur als solche dargestellt werden können.
Eingabegeräte, die über manuell zu betätigende Kraft-Momenten-Sensoren verfügen, sind beispielsweise aus den Patent-Schriften DE 36 11 336 C2, DE 37 64 287 sowie EP 0 979 990 A2 bekannt. Aus der zuletzt genannten Patentschrift ist es weiterhin bekannt, einen derartigen Kraft-Momenten-Sensor zum Steuern eines realen oder virtuellen Misch- bzw. Steuerpults zu verwenden, beispielsweise um neuartige Färb-, Licht- und/oder Tonkompositionen zu kreieren und zu gestalten. Hier-
P 24392 DE .. .,
• ·
bei kann wiederum in vorteilhafter Weise die intuitive räumliche Steuerung in drei translatorischen sowie drei rotatorischen Freiheitsgraden auf ein stufenloses räumliches Mischen oder Steuern einer großen Anzahl von optischen und/oder akustischen Parametern übertragen werden.
Manuell steuerbare Eingabesysteme, die eine Navigation in drei Dimensionen erlauben, werden heute in einer Reihe der unterschiedlichsten technischen Anwendungsfeider erfolgreich eingesetzt. Ein solches Anwendungsfeld stellen beispielsweise Steuervorrichtungen zur Steuerung der Funktionen elektronischer Musikinstrumente (vor allem bei Synthesizern und Masterkeyboards) dar, die über eine sogenannte MIDI-Schnittstelle (engl.: "Musical Instrument Digital Interface") verfügen.
Eine solche dreidimensionale Steuervorrichtung für elektronische Musikinstrumente ist zum Beispiel durch den in den Keyboards EM-30 und EM-50 der Firma Roland integrierten D-Beam Controller gegeben. Durch die Verwendung eines extrem empfindlichen Infrarot-Lichtstrahls können dabei die Hand- und/oder Körperbewegungen eines Benutzers oberhalb einer mit Infrarot-Sensorelementen beschichteten Fläche berührungslos detektiert werden. Kraft der D-Beam-Technologie können durch diese Hand- und/oder Körperbewegungen des Benutzers einzelne akustische Parameter eingespielter Improvisationen bzw. Kompositionen in Echtzeit modifiziert bzw. gesteuert werden. Der D-Beam Controller verwandelt dazu die Bewegungen des Benutzers in MIDI-Signale und analoge Steuersignale.
Da eines der bevorzugten Ausführungsbeispiele der vorliegenden Erfindung ebenfalls auf einer Steuervorrichtung zur Steuerung von gespeicherten parametrisierten Audiodaten mit Hilfe von parametrisierten Ansteuersignalen beruht, die mit Hilfe steuerbarer virtueller Objekte über eine MIDI-Schnitt-
P 24392 DE
16
stelle zu mindestens einem elektronischen Musikinstrument
stelle zu mindestens einem elektronischen Musikinstrument
übertragen werden, sollen im Folgenden die für das Verständnis der Erfindung wichtigen Aspekte des MIDI-Standards kurz dargestellt werden.
5
5
Bei der MIDI-Schnittstelle handelt es sich um ein digitales Datenübertragungsformat zwischen elektronischen Musikinstrumenten, Computern und Peripheriegeräten. Der MIDI-Standard ist heute weitverbreitet und wird seit seiner Einführung im Jahre 1983 von vielen Musikern und Komponisten verwendet.
MIDI eröffnet eine sehr effiziente Methode, Audiodaten darzustellen, und das macht MIDI nicht nur für Komponisten oder Künstler zu einem sehr attraktiven Datenübertragungsprotokoll, sondern auch für eine Vielzahl von Computer-Applikationen, die in der Lage sind, Klangmuster (Sounds) zu generieren, wie beispielsweise Multimedia-Anwendungen oder Computerspiele. Dank der Veröffentlichungen der General MIDI System Specification genießen heute die gebräuchlichsten PC/MIDI-Schnittstellen weitgehend Anerkennung unter den Benutzern.
Darüber hinaus wird MIDI von dem Betriebssystem Microsoft Windows und anderen Betriebssystemen unterstützt. Aufgrund der Entwicklung und Vermarktung preisgünstiger Synthesizer erfreut sich der MIDI-Standard bei kontinuierlich steigender Anzahl von Anwendungen zunehmend an Beliebtheit.
MIDI wurde ursprünglich entwickelt, um zwei oder mehrere Keyboards verschiedener Herstellerfirmen miteinander koppeln zu können. Dass jedoch mit Hilfe des MIDI-Datenformats komplette Musikproduktionen durch Sequenzer-Systeme erstellt würden, hat damals niemand vorausgesehen. Heute findet MIDI vor allem Anwendung als Übertragungsmedium, um digitalisierte Audiodaten in Computerspielen bzw. Multimedia-Applikationen zu ersetzen oder zu ergänzen.
P 24392 DE
• · t <
Standardisiert wurde MIDI von der MIDI Manufacturers Association (MMA), der weltweit alle Hersteller digitaler Musikinstrumente angehören. Dieses Komitee definiert die für alle Mitglieder verbindliche Norm, unter anderem auch die im MIDI-Standard festgelegte Befehlsstruktur des MIDI-Protokolls. Ohne diesen Standard wären Inkompatibilitaten unter den Geräten verschiedener Hersteller die Folge.
Im Gegensatz zur Übertragung von analogen Audiodaten werden bei der Übertragung von Klangmustern via MIDI-Schnittstelle von einem oder mehreren Keyboards zu einem Computer (bzw. in umgekehrter Richtung) lediglich Bitsequenzen (sogenannte "MIDI-Events") übermittelt, welche die signifikanten akustischen Parameter der auf den einzelnen Keyboards gespielten bzw. wiederzugebenden Musikstücke in elektronisch lesbarer Form beinhalten. Diese Programmierbefehle beinhalten MIDI-Sequenzen, die den Synthesizer beispielsweise anweisen, welche Tonspuren bespielt werden sollen, welche Solo- bzw. Begleitinstrumente für ein Arrangement verwendet werden sollen und welche musikalischen Parameter übertragen werden. Unter akustischen Parametern versteht man im Einzelnen beispielsweise Tonhöhen, Noten- bzw. Pausenwerte, Lautstärken, Tempi, Artikulationsanweisungen, Klangfarben, Pedal-, Vibrato-, Chorus-, Hall-, Oberton- und/oder andere Spezialeffekte. Im Folgenden sollen diese akustischen Parameter als "MIDI-Spielinformationen" bezeichnet werden. Bei der Wiedergabe der Audiodaten auf einem Keyboard handelt es sich also nicht um analoge Aufzeichnungen von zuvor auf einem Keyboard eingespielter Musikstücke, sondern um die exakte Reproduktion des Aufnahmevorgangs selbst. Die polyphonen Stimmen eines Wiedergabe-Synthesizers sind dabei zumindest teilweise belegt.
Im Vergleich zur Verwendung von abgetasteten Audiodaten, die auf einer Diskette oder einer CD-ROM gespeichert sind, weist die Erzeugung von Klangmustern (Sounds) mit Hilfe von MIDI-
P 24392 DE .. ., ··.
Synthesizern viele Vorteile auf. Einer dieser Vorteile betrifft den zur Speicherung der parametrisierten Audiodaten benötigten Speicherplatz. Dateien, in denen normalerweise digital abgetastete Audiodaten in einem PCM-Format abgespeichert werden (wie z.B. ".WAV"-Dateien), sind in der Regel ziemlich groß. Das trifft insbesondere für lange Musikstücke zu, die in Stereoqualität bei hoher Abtastrate aufgenommen wurden. Im Gegensatz dazu sind MIDI-Dateien extrem klein. Beispielsweise enthalten Dateien, in denen hochwertige abgetastete Audiodaten in Stereoqualität gespeichert sind, circa 10 MByte pro Minute abgespielter Musik, während eine typische MIDI-Sequenz eine Größe von weniger als 10 kByte pro Minute abgespielter Musik aufweist. Das ist deswegen der Fall, weil MIDI-Dateien - wie bereits erwähnt - nicht die abgetasteteten Audiodaten enthalten, sondern lediglich die Programmierbefehle, die von einem Synthesizer benötigt werden, um den gewünschten Sound zu generieren.
Da die MIDI-Spielinformationen keine unmittelbaren Informationen über die Art der repräsentierten Audiodaten transportieren, sind einzelne akustische Parameter dieser MIDI-Spielinformationen nachträglich beliebig austauschbar. Dies birgt ebenfalls große Vorteile:
- Ein Komponist kann sein Werk nachträglich variabel instrumentieren bzw. umarrangieren.
- Die beim Einspielen möglicherweise aufgetretenen Fehler
(z.B. "falsche Töne") können nachträglich korrigiert werden.
- Mehrere Synthesizer können beispielsweise ein und dieselbe Stimme wiedergeben (Unisono), um mehr Klangfülle zu erzielen u.v.m.
P 24392 DE
Die zusätzliche Möglichkeit, auf einem oder mehreren Synthesizern oder anderen elektronischen Musikinstrumenten eingespielte Musikstücke auf dem Bildschirm zu editieren, also einzelne Noten oder Pausen, Notengruppen oder ganze Notensysteme verändern, ergänzen, löschen, verschieben bzw. transponieren zu können, vereinfacht die Arbeit eines Komponisten beträchtlich.
Ein komplettes MIDI-Wort besteht in der Regel aus drei Byte. Zuerst wird das sogenannte Status-Byte gesendet. Es handelt sich dabei um eine Mitteilung, um welche Art von Nachricht es sich handelt. Dem Status-Byte folgen zwei Daten-Bytes, die Angaben über den jeweiligen Inhalt der Nachricht enthalten. Das folgende Beispiel bezieht sich auf die MIDI-Darstellung für das "Anschalten" eines Tons mittlerer Tonhöhe (c1) , der in einer mittleren Lautstärke (ital.: "Mezzoforte", mf) erklingen soll:
20
| Art der Nachricht (Status- Byte) |
Tonhöhen- Information (1. Daten- Byte) |
Lautstärken- Information (2. Daten- Byte) |
|
| MIDI-Wort (binär) |
1001000O2 | 0011110O2 | 0100011O2 |
| MIDI-Wort (dezimal) |
144io | 6Oio | 7O10 |
| Musikalische Information |
"Note On" | Eingestrichenes "C" (c1) |
"Mezzoforte" (mf) |
Das erste Bit (engl.: "Most Significant Bit", MSB) in der Binärdarstellung des Status-Bytes ist immer mit dem Wert "1" belegt, bei Daten-Bytes hat das MSB stets den Wert "0". Auf diese Weise lassen sich Status- und Datenbytes eindeutig unterscheiden. Für die Dezimalwerte Zs für ein Status-Byte gilt infolge der "1" im MSB: Z8 e [12810; 255i0] . Da bei den Daten-Bytes das MSB auf "0" gesetzt ist, also nicht mehr als Wertindikator herangezogen werden kann, verbleiben für die Daten-
P 24392 DE
♦ ·
• ·
20
Bytes nur noch jeweils sieben Bits, so dass folglich für die Dezimalwerte Z01 bzw. ZD2 der beiden Daten-Bytes gilt: &Zgr;&Oacgr;1 e [Oio;127io] und Z02 e [0i0; 127i0] . Diese 128 verschiedenen "Note On"- bzw. "Note Off"-Kombinationen reichen völlig aus, da 12 8 verschiedene Tonhöhen - angeordnet in einer gleichschwebendtemperierten, chromatischen Tonskala (d.h. im Abstand von Halbton-Intervallen) - den Tonumfang (Ambitus) eines modernen Konzertflügels mit 88 Tasten weit übersteigt.
Bytes nur noch jeweils sieben Bits, so dass folglich für die Dezimalwerte Z01 bzw. ZD2 der beiden Daten-Bytes gilt: &Zgr;&Oacgr;1 e [Oio;127io] und Z02 e [0i0; 127i0] . Diese 128 verschiedenen "Note On"- bzw. "Note Off"-Kombinationen reichen völlig aus, da 12 8 verschiedene Tonhöhen - angeordnet in einer gleichschwebendtemperierten, chromatischen Tonskala (d.h. im Abstand von Halbton-Intervallen) - den Tonumfang (Ambitus) eines modernen Konzertflügels mit 88 Tasten weit übersteigt.
Um einzelne Geräte innerhalb eines MIDI-Systems gezielt ansprechen zu können, existieren insgesamt 16 MIDI-Kanäle. Der MIDI-Kanal des Senders muss dabei mit dem des jeweiligen Empfängers identisch sein. Grundsätzlich gilt dabei, dass eine MIDI-Datenleitung alle Spielinformationen auf allen 16 MIDI-Kanälen transportiert, wobei die angeschlossenen Tonerzeuger die Nachrichten selektieren, die ihnen jeweils zugedacht sind. Mit Hilfe der letzten vier Bits des Status-Bytes wird dabei die Adresse Ak eines selektierten MIDI-Kanals k (wobei k e {&Ogr;&iacgr;&ogr;, . . . , 15io} bzw. Ak 6 {000O2, . . . , 111I2)) übertragen. Das bedeutet, dass nur die ersten vier Bits des Status-Bytes die Status-Information einer MIDI-Sequenz (z.B. "Note On", "Note Off" etc.) beinhalten.
| 1. Quartett des | 2. Quartett des | |
| Status-Bytes | Status-Bytes | |
| (Status- | (Kanal- | |
| Information) | adresse) | |
| Art der Nachricht | 100I2 | 000O2 |
| (Status-Byte, binär) | ||
| Art der Nachricht | 9io | &Ogr;&iacgr;&ogr; |
| (Status-Byte, dezimal) |
Für das Beispiel des oben beschriebenen "Note On"-Befehls bedeutet das konkret, dass der erste Kanal (k = 0) mit der Adresse A0 = 000O2 selektiert wurde.
P 24392 DE
21
Wird ein Byte eines solchen MIDI-Wortes von einem Synthesizer empfangen, wird zunächst anhand des MSB geprüft, ob ein Status-Byte oder ein Daten-Byte vorliegt. Der Empfänger muss darüber hinaus alle Status-Bytes hinsichtlich ihrer Kanaladressierung überprüfen, die er, beauftragt durch die jeweilige MIDI-Kanal-Einstellung, empfangen muss. Wird ein MIDI-Event mit der ihm zugedachten Adresse entdeckt, entschlüsselt der Empfänger die dem Status-Byte folgenden Daten-Bytes und generiert die entsprechenden Töne. Man kann dieses Prinzip mit der Lesart eines Chorsängers bzw. Instrumentalisten vergleichen, der beim Singen bzw. Spielen eines Musikstücks aus einem polyphonen Tonsatz, einem Arrangement oder einer Partitur lediglich die ihm zugedachte Stimme herausliest.
Wird ein Byte eines solchen MIDI-Wortes von einem Synthesizer empfangen, wird zunächst anhand des MSB geprüft, ob ein Status-Byte oder ein Daten-Byte vorliegt. Der Empfänger muss darüber hinaus alle Status-Bytes hinsichtlich ihrer Kanaladressierung überprüfen, die er, beauftragt durch die jeweilige MIDI-Kanal-Einstellung, empfangen muss. Wird ein MIDI-Event mit der ihm zugedachten Adresse entdeckt, entschlüsselt der Empfänger die dem Status-Byte folgenden Daten-Bytes und generiert die entsprechenden Töne. Man kann dieses Prinzip mit der Lesart eines Chorsängers bzw. Instrumentalisten vergleichen, der beim Singen bzw. Spielen eines Musikstücks aus einem polyphonen Tonsatz, einem Arrangement oder einer Partitur lediglich die ihm zugedachte Stimme herausliest.
Im Folgenden sollen die Funktionen von zwei der gebräuchlichsten Steuervorrichtungen, die bei Synthesizern und Masterkeyboards anzutreffen sind, kurz beschrieben werden: das "Pitch Bend Wheel" zur stufenlosen Verstimmung der Tonhöhen von Tönen angeschlagener Tasten eines Synthesizers und das "Modulation Wheel" zur Modulation der Klangfarbeneigenschaften der Tonhöhen von Tönen angeschlagener Tasten eines Synthesizers .
Das MIDI-Datenformat sieht als kleinstmögliches Intervall zwischen verschiedenen Tonhöhen gleichschwebend-temperierte Halbtonschritte bzw. "Chromas" vor (also enharmonisch äquivalente Intervalle wie übermäßige Primen, kleine Sekunden bzw. doppelt verminderte Terzen). Um eine stufenlose Frequenz-Variation (engl.: "Pitch Bending") zu erreichen, werden sogenannte Pitch-Bend-Wheel-Daten benötigt, die mit einem entsprechenden Steuerinstrument des Synthesizers (dem "Pitch Bend Wheel") erzeugt werden können. Es handelt sich dabei meist um ein Rad oder (seltener) einen in vier Richtungen beweglichen Joystick. Bei Synthesizern, die mit diesen Pitch Bend Wheels ausgestattet sind, lassen sich die Tonhöhen der
P 24392 DE ···· .··,··-:
Tasten, welche auf der Tastatur des Synthesizers niedergedrückt werden, durch eine Drehbewegung am Pitch Bend Wheel in Richtung höherer bzw. tieferer Frequenzen verstimmen. Normalerweise können damit Verstimmungen von bis zu einem gleichschwebend-temperierten Ganzton in Richtung höherer bzw. tieferer Frequenzen erzeugt werden. Das Pitch Bend Wheel ist in der Regel mit einem Rückholmechanismus ausgestattet, der beim Loslassen des Rades wieder zur Mittel- bzw. Normalstellung zurückspringt. Diese Stellung entspricht dabei den Tonhöhen der niedergedrückten Tasten bei Zugrundelegung der gleichschwebenden-temperierten Stimmung.
Mit Hilfe einer Modulationsfunktion, die üblicherweise mit einem weiteren Steuerinstruments des Synthesizers (dem "Modulation Wheel") vorgenommen werden kann, können die Töne der auf der Tastatur des Synthesizers angeschlagenen Tasten optional mit einem Vibrato-Effekt versehen werden. Alternativ kann dieses Steuerinstrument auch zur Erzielung anderer Effekte eingesetzt werden, etwa um die Klanghelligkeit bzw. die Resonanz der gespielten Töne durch eine Änderung ihres Obertonspektrums zu mofifizieren. Wird das Modulation Wheel bis zu einem ersten Anschlagspunkt zugedreht, ist die Effekttiefe minimal; wird es bis zu einem gegenüberliegenden zweiten Anschlagspunkt aufgedreht, ist die Effekttiefe maximal.
Um die Ansteuerung einzelner MIDI-Funktionen mit Hilfe von parametrisierten Ansteuersignalen erklären zu können, soll im Folgenden kurz auf die wichtigsten der dazu nötigen MIDI-Controller eingegangen werden.
Mit Hilfe des ersten Daten-Bytes eines MIDI-Wortes können maximal 128 verschiedene Controller-Adressen und damit bis zu 128 verschiedene Spielhilfen oder andere MIDI-Funktionen angesprochen werden. Das zweite Daten-Byte ist für den Regelbereich verantwortlich. Beispielsweise kann mit Hilfe des für
P 24392 DE
Frequenzmodulationen zuständigen Controllers Nr. 1 den vom Synthesizer erzeugten Klängen ein Vibrato- bzw. Tremolo-Effekt hinzugefügt werden. In der folgenden Tabelle sind die gebräuchlichsten Controller mit ihren Nummern (Adressen) und Bezeichnungen aufgelistet:
| Controller-Nummer (dezimal) |
Controller-Bezeichnung |
| 1 | Modulation |
| 2 | Breath Controller |
| 4 | Foot Controller |
| 5 | Portamento Time |
| 6 | Data Entry Slider |
| 7 | Volume |
| 8 | Balance |
| 10 | Panorama |
| 11 | Expression Pedal |
| 12 bis 31 | User-Defined |
| 91 | External Effects Depth |
| 92 | Tremolo Depth |
| 93 | Chorus Depth |
| 94 | Detune Depth |
| 95 | Phaser Depth |
Die Adressen 12 bis 31 sind nicht belegt und bieten dem Anwender Möglichkeiten freier Zuordnungen von MIDI-Funktionen. Je nach Beschaffenheit des jeweiligen Synthesizers können diesen Adressen mitunter sehr ausgefallene physikalische Parameter zugewiesen werden, z.B. Oszillatorfrequenz oder PuIsweite der generierten Schwingungen.
Die Controller 32 bis 38 dienen dazu, den Wertebereich der Controller-Adressen 1 bis 6 feiner aufzulösen. Dasselbe wird auch von den Controller-Nummern 39 bis S3 für die Adressen 7 bis 31 bewirkt.
Die bisher beschriebenen Spielhilfen zeichnen sich durch eine gemeinsame Eigenschaft aus: Sie lassen sich (in 128 oder mehr
P 24392 DE
• ♦
• ·
24
Einzelschritten) stufenlos regeln. Der Oberbegriff für diese Controller lautet "Continuous Controller". Im Gegensatz dazu existieren weitere Controller, die Schalterfunktionen übernehmen und daher allgemein "Switch Controller" genannt werden. Die folgende Tabelle gibt eine Übersicht über die wichtigsten dieser Controller:
Einzelschritten) stufenlos regeln. Der Oberbegriff für diese Controller lautet "Continuous Controller". Im Gegensatz dazu existieren weitere Controller, die Schalterfunktionen übernehmen und daher allgemein "Switch Controller" genannt werden. Die folgende Tabelle gibt eine Übersicht über die wichtigsten dieser Controller:
| Controller-Nummer (dezimal) |
Controller-Bezeichnung |
| 64 | Sustain Pedal |
| 65 | Portamento Switch |
| 66 | Sostenuto |
| 67 | Soft Pedal |
| 69 | Hold-Pedal |
| 70 bis 90 | undefined |
| 96 | Data Entry (-/No) |
| 97 | Data Entry (+/Yes) |
Bei genauerer Betrachtung des zweiten Daten-Bytes von Controller 64 findet man nur zwei Werte vor, nämlich
0000000O2 (= O10) für "Pedal Off" und 1111111I2 (= 127io) für "Pedal On".
Das MIDI-Datenformat lässt prinzipiell jedoch eine differenziertere Interpretation des Wertebereichs I10 bis 126i0 zu. Beispielsweise kann so auch ein mehrstufiger Sustain-Effekt vorgesehen sein. Bei Synthesizern, die diesen mehrstufigen Sustain-Effekt zulassen, wird die Abklingphase von Klangereignissen bei "halb" heruntergetretenem Pedal im Vergleich zur Abklingphase von Klangereignissen gleicher Tonhöhe und Lautstärke bei bis zum Anschlag heruntergetretenem Pedal entsprechend verkürzt.
Normalerweise sind die Controller-Adressen, z.B. für das Modulationsrad, das Haltepedal oder mit dem Fuß bedienbare Schweller zur Beeinflussung der Dynamik, bereits festgelegt.
P 24392 DE ···· ."."-J
Wenn eine dieser Spielhilfen benutzt wird, steht die gesendete Controller-Adresse fest. Moderne Synthesizer und Master-Keyboards verfügen jedoch darüber hinaus auch über frei definierbare Controller, d.h. den dafür vorgesehenen Spielhilfen (Pedalen, Schwellern, Rädern und Schiebereglern) kann eine beliebige Controller-Nummer zugewiesen werden. Einige Tonerzeuger gestatten wiederum die Neudefinition der Controller-Funktionen im Gerät selbst. Dabei kann die empfangene Controller-Nummer einer internen Funktion frei zugewiesen werden.
Zur Klangerzeugung mit Hilfe von elektronischen Musikinstrumenten, Computern bzw. Sound-Karten sind heute eine Vielzahl von verschiedenen Technologien und Verfahren im Einsatz. Zwei weit verbreitete Techniken der Klangerzeugung mit Hilfe elektronischer Musikinstrumente sind Frequenzmodulation (FM-Synthese) und die Verwendung von Wavetables (WAV-Synthese).
FM-Synthese ist ein Verfahren, das von Sound-Karten und Computern benutzt wird, um die Klangfarben von akustischen Musikinstrumenten durch elektronische Mittel nachzuahmen. Mit Hilfe von FM-Synthese generierte Klänge sind als solche leicht erkennbar - im Gegensatz zu Klangmustern, die durch WAV-Synthese mit Hilfe von Wavetables erzeugt wurden. Master-Keyboards und Synthesizer, die über Wavetables verfügen, sind verhältnismäßig kostspielig, werden aber oft von vielen Berufs- und Hobbymusikern wegen ihrer hohen Abspielqualität bevorzugt. Die Klangmuster werden dabei von Wavetables erzeugt, die gespeicherte, digital abgetastete Original-Klänge (engl.:
"Samples") von akustischen Musikinstrumenten miteinander kombinieren und/oder reproduzieren. Verglichen mit der FM-Synthese, bei der elektronische Klänge mit Hilfe des Computers erzeugt werden, erscheinen Wavetable-Klangmuster somit wesentlich realistischer.
P 24392 DE .. .·
Mit Hilfe von Sound-Karten können die Möglichkeiten herkömmlicher Computer zur Erzeugung von Audiosignalen und Klangmustern erweitert werden. Sound-Karten sind unerlässlich für jede Applikation, die Sound-Effekte verwendet. Um analoge Audiodaten in die digitale Rechnersprache übersetzen zu können, verfügen Sound-Karten über entsprechende Vorrichtungen zur Digitalisierung analoger Klänge. Dabei basiert die Klangerzeugung durch eine Sound-Karte entweder auf einer FM-Synthese oder einer WAV-Synthese.
10
10
AUFGABE DER VORLIEGENDEN ERFINDUNG
Ausgehend von dem oben genannten Stand der Technik, widmet sich die vorliegende Erfindung der Aufgabe, Erzeugnisse bereitzustellen, mit deren Hilfe dem Anwender eine aktive Steuerung von virtuellen und/oder realen Objekte ermöglicht wird, wobei die bereits vorhandenen Fertigkeiten des Benutzers zur Aussendung von Information genutzt werden. Insbesondere soll durch die Erzeugnisse dabei die Bewegungssteuerung von Objekten in Echtzeit bzw. die Echtzeit-Steuerung von elektronisch erzeugten Audiosignalen vereinfacht werden.
Diese Aufgabe wird erfindungsgemäß durch Systeme, d.h. Erzeugnisse, mit den Merkmalen der unabhängigen Patentansprüche gelöst. Vorteilhafte Ausführungsbeispiele von Systemen, die den Gedanken der Erfindung weiterbilden, sind in den abhängigen Patentansprüchen definiert.
ZUSAMMENFASSENDE DARSTELLUNG DER VORLIEGENDEN ERFINDUNG
Die Erfindung schlägt zur Lösung der im vorangehenden Abschnitt definierten Aufgabe vor eine effiziente Technik zur grafischen Visualisierung und Echtzeit-Ansteuerung von virtuellen oder realen Objekten zur Erzeugung und/oder Beeinflussung von Bild- bzw. Tonsequenzen, mit dessen Hilfe auf
P 24392 DE
f
*
einem Bildschirm dargestellte oder reale Objekte durch interaktive Steuerbefehle eines Benutzers in ihren Eigenschaften und/oder Aktionen auf eine komfortable und zuverlässige Weise in Echtzeit manipuliert, gesteuert bzw. beeinflusst werden können. Insbesondere beinhaltet die vorliegende Erfindung Systemezur Animation und Bewegungssteuerung eines Gelenk-Objekts in (Quasi-)Echtzeit, Systeme zur frei spezifizierbaren Steuerung von optischen bzw. akustischen Parametern sowie ein System zur Echtzeit-Bewegungssteuerung von virtuellen oder realen Objekten.
Die vorliegende Erfindung bezieht sich insbesondere auf Eingabegeräte, die Ansteuersignale für verschiedene, voneinander unabhängige Freiheitsgrade erzeugen können, und dies jeweils durch Analogsignale. Jedes dieser Analogsignale kann somit als Parameterwert bei der Ansteuerung virtueller Objekte verwendet werden.
Bei den dabei verwendeten Technologien zur Eingabe der vom Benutzer abgesetzten Steuerbefehle handelt es sich im Gegensatz zu herkömmlichen manuell bedienbaren, mechanischen bzw. berührungssensitiven Eingabemechanismen über Tastatur, Maus, Trackball, Joystick, Grafiktablett mit Griffel, taktile Displays etc. um Vorrichtungen zur Aufnahme, Erkennung, Interpretation und Verarbeitung dreidimensionaler Bewegungen eines Benutzers. Der Benutzer ist somit nicht mehr auf das Vorhandensein zusätzlicher Hardware-Vorrichtungen zur manuellen Eingabe von Steuerbefehlen angewiesen. Die Auswertung der eingegebenen Information kann stattdessen bzw. zusätzlich mit Hilfe von Methoden der Signal- bzw. Mustererkennung erfolgen. Ferner kann die Art des Eingabeverfahrens speziell auf die individuell vorhandenen Fähigkeiten des Benutzers zugeschnitten sein.
P 24392 DE
Ein Aspekt der vorliegenden Erfindung ist es, dass Referenzmuster zur Animation und Bewegungssteuerung von Objekten, zur Gestaltung von Form, Farbe und Struktur der Oberflächen virtueller Objekte sowie zur Erzeugung und/oder Beeinflussung von Bild- bzw. Tonsequenzen vorab abgespeichert werden. Diese Referenzmuster können dann - abhängig von den Ansteuersignalen des Benutzers - als Parameterwerte zur Erzeugung und/oder Beeinflussung von Animationseffekten, zur Oberflächengestaltung der Objekte, zur Steuerung bzw. gezielten Manipulation von Video- bzw. Audiodaten etc. in Echtzeit abgerufen werden. Das Hinterlegen der jeweiligen Referenzmuster kann dabei standardisiert erfolgen, so dass aufbauend auf einer solchen Echtzeit-Steuerung eine Änderung der oben genannten Parameterwerte durch ein modulartiges Austauschen der jeweiligen Referenzmuster an einer entsprechenden Schnittstelle der Echtzeit-Steuerung mit verhältnismäßig geringem Aufwand erfolgen kann.
1.System zur Animation und Bewegungssteuerung eines Gelenk-Objekts in Echtzeit durch Ansteuerung mit Hilfe parametrisierter Bewegungsmuster
Gemäß der zugrunde liegenden Erfindung ist es möglich, auf eine vollständige Neuprogrammierung eines Echtzeit-Bewegungsablaufes zu verzichten; vielmehr können bekannte Bewegungsmuster über eine standardisierte Schnittstelle in parametrisierter Form einer Echtzeit-Bewegungssteuerung zur Verfügung gestellt werden.
Ein bevorzugtes Ausführungsbeispiel der zugrunde liegenden Erfindung beruht auf einer Technik zur Echtzeit-Bewegungssteuerung eines Gelenk-Objekts. Dabei wird zunächst wenigstens ein parametrisiertes Bewegungsmuster zu wenigstens ei nem Oberflächenmuster für das Objekt definiert. Werden dann mit Hilfe eines Eingabegeräts Ansteuersignale in die Echt-
P 24392 DE .. .. e. .... »« ♦««♦
zeit-Bewegungssteuerung eingegeben, berechnet diese Skelett-Änderungsdaten (d.h. die Lageänderungen der Konturen eines virtuellen Objekts bzw. eines Gerüsts, bestehend aus den durch Kanten verbundenen Gelenkpunkten eines virtuellen Objekts) als Parameterwerte auf Grundlage der Ansteuersignale und wenigstens eines parametrisierten Bewegungsmusters. Dabei geben die Skelett-Änderungsdaten translatorische und/oder rotatorische Änderungen der Lage bzw. Orientierung der Gelenke des Objekts wieder. Schließlich wird die Oberfläche des virtuellen Gelenk-Objekts auf Grundlage der Skelett-Änderungsdaten und wenigstens eines Oberflächenmusters berechnet. Indem die zuletzt genannten Schritte dicht aufeinanderfolgend wiederholt werden, erhält man (abhängig von den Ansteuersignalen des Benutzers) eine Bewegungssteuerung des Objekts, die von einem Betrachter nicht mehr von einer Bewegungssteuerung in Echtzeit unterschieden werden kann.
Durch Austausch bzw. erneute Definition eines parametrisierten Bewegungsmusters und/oder Oberflächenmusters kann also mit sehr geringem Aufwand eine Bewegungssteuerung eines neuartigen Gelenk-Objekts erzielt werden.
Gemäß dem Ausführungsbeispiel der zugrunde liegenden Erfindung können Ansteuersignale für wenigstens sechs unabhängige Freiheitsgrade simultan eingegeben und in Echtzeit verarbeitet werden. Dabei handelt es sich beispielsweise um Ansteuersignale für drei translatorische und drei rotatorische Freiheitsgrade in einem virtuellen dreidimensionalen Vektorraum.
Ausgehend von den ermittelten momentanen Positionsvektoren des Eingabegeräts, können erfindungsgemäß insbesondere die ersten und zweiten zeitlichen Ableitungen der Ansteuersignale (also die Geschwindigkeits-, Beschleunigungs-, Winkelgeschwindigkeits- bzw. Winkelbeschleunigungsvektoren) ermittelt
P 24392 DE
30
und verarbeitet werden. Die Steuerung ermittelt also die zeitliche Veränderung der Ansteuersignale selbst, so dass beispielsweise im Gegensatz zur bereits genannten Patentschrift US-A-5,757,360 kein eigener Beschleunigungssensor erforderlich ist. Die Beschleunigung kann vielmehr durch zeitliche Auswertung der Entwicklung der Ansteuersignale mit Hilfe der Bewegungssteuerung selbst ermittelt werden. Die Zuordnung der Ansteuersignale bzw. deren zeitlicher Ableitungen als Parameterwerte für die gespeicherten Bewegungsmuster kann dabei frei spezifizierbar sein.
und verarbeitet werden. Die Steuerung ermittelt also die zeitliche Veränderung der Ansteuersignale selbst, so dass beispielsweise im Gegensatz zur bereits genannten Patentschrift US-A-5,757,360 kein eigener Beschleunigungssensor erforderlich ist. Die Beschleunigung kann vielmehr durch zeitliche Auswertung der Entwicklung der Ansteuersignale mit Hilfe der Bewegungssteuerung selbst ermittelt werden. Die Zuordnung der Ansteuersignale bzw. deren zeitlicher Ableitungen als Parameterwerte für die gespeicherten Bewegungsmuster kann dabei frei spezifizierbar sein.
2.System zur Echtzeit-Steuerung von akustischen Parametern aufgezeichneter Audiodaten mit Hilfe von parametrisierten Klangmustern
Darüber hinaus bzw. alternativ können in einem weiteren Ausführungsbeispiel der zugrunde liegenden Erfindung auch Audiodaten mit Hilfe von parametrisierten Ansteuersignalen des Benutzers in Echtzeit gezielt beeinflusst werden. Dabei können digital gespeicherte, parametrisierte Klangmuster, wie beispielsweise die akustischen Parameter von (gemäß dem sogenannten MIDI-Standard) digital aufgezeichneten Musikstücken, , die über die parametrisierten Ansteuersignale des Benutzers ansteuerbar sind, gezielt modifiziert werden. Diese Klangmuster können dann - abhängig von den jeweiligen Ansteuersignalen des Benutzers als Parameterwerte in Echtzeit abgerufen werden.
3. System zur frei spezifizierbaren Steuerung von animierten Grafiken, Video- und/oder Audiodaten
Nach einem weiteren Ausführungsbeispiel der vorliegenden Erfindung ist eine Technik zur frei spezifizierbaren Steuerung von animierten Grafiken, Video- und/oder Audiodaten mit Hilfe optischer bzw. akustischer Parameter vorgesehen. Für die Er-
P 24392 DE
31
zeugung und/oder Beeinflussung dieser Bild- bzw. Tonsequenzen ist dabei wenigstens ein vordefiniertes parametrisiertes Bewegungs-, Oberflächen-, Klang- und/oder Beleuchtungsmuster als Referenzmuster hinterlegt. Dazu werden Ansteuersignale verschiedener Freiheitsgrade von einem Eingabegerät ausgewertet und als Parameterwerte zur Erzeugung bzw. Beeinflussung von animierten Grafiken, Video- und/oder Audiodaten mit Hilfe mindestens eines hinterlegten Referenzmusters verwendet. Die Zuordnung der Ansteuersignale jeweils eines Freiheitsgrades zu einem bestimmten Referenzmuster ist dabei durch den Benutzer frei spezifizierbar.
zeugung und/oder Beeinflussung dieser Bild- bzw. Tonsequenzen ist dabei wenigstens ein vordefiniertes parametrisiertes Bewegungs-, Oberflächen-, Klang- und/oder Beleuchtungsmuster als Referenzmuster hinterlegt. Dazu werden Ansteuersignale verschiedener Freiheitsgrade von einem Eingabegerät ausgewertet und als Parameterwerte zur Erzeugung bzw. Beeinflussung von animierten Grafiken, Video- und/oder Audiodaten mit Hilfe mindestens eines hinterlegten Referenzmusters verwendet. Die Zuordnung der Ansteuersignale jeweils eines Freiheitsgrades zu einem bestimmten Referenzmuster ist dabei durch den Benutzer frei spezifizierbar.
Zusätzlich können gegebenenfalls zeitliche Ableitungen der Ansteuersignale einem bestimmten Referenzmuster zugeordnet werden. Die Kopplungsparameter der Zuordnung, wie beispielsweise die Dämpfung und die Verstärkung können dabei ebenfalls durch den Benutzer frei einstellbar sein.
4. System zur Echtzeit-Bewegungssteuerung von virtuellen und/oder realen Objekten
Erfindungsgemäß kann auch ein System zur Echtzeit-Bewegungssteuerung von Objekten vorgesehen sein, das einen Speicher aufweist, in dem wenigstens ein parametrisiertes Bewegungsmuster und wenigstens ein Oberflächenmuster des Objekts abgelegt sind. Dieses System kann weiterhin ein Eingabegerät zur Eingabe von Ansteuersignalen für die Echtzeit-Bewegungssteuerung aufweisen. Ferner kann ein Bewegungsgenerator vorgesehen sein, um Skelett-Änderungsdaten auf Grundlage der Ansteuersignale als Parameterwerte und wenigstens eines parametrisierten Bewegungsmusters zu berechnen. Die Skelett-Änderungsdaten geben dabei translatorische und/oder rotatorische Änderungen der Lage bzw. Orientierung der Gelenke des Objekts wieder. Außerdem kann ein Oberflächengenerator vorgesehen sein, der die Oberfläche virtueller Gelenk-Objekte auf Grundlage ihrer
P 24392 DE
Skelett-Änderungsdaten und je eines ausgewählten Oberflächenmusters berechnet.
Das Eingabegerät kann zur gleichzeitigen Eingabe von Ansteuersignale für wenigstens sechs unabhängige Freiheitsgrade ausgelegt sein. Es kann dabei insbesondere zur Eingabe von Ansteuersignalen für drei translatorische und drei rotatorische Freiheitsgrade in einem dreidimensionalen Vektorraum konzipiert sein. Zusätzlich kann auch eine Einheit zur Ermittlung und Verarbeitung der zeitlichen Ableitungen dieser Ansteuersignale vorgesehen sein.
Um dem Benutzer die Echtzeit-Steuerung von gespeicherten Audiodaten zu ermöglichen, kann ferner ein Klanggenerator zur Erzeugung von Klangsignalen durch Verknüpfung digitaler para metrisierter Klangmuster mit digitalen Ansteuersignalen, die in parametrisierter Form vorliegen, vorgesehen sein.
Darüber hinaus kann auch eine Einheit zur wahlfreien Zuordnung der Ansteuersignale bzw. derer Ableitungen als Parameterwerte für die parametrisierten Bewegungs-, Oberflächen-, Klang- und/oder Beleuchtungsmuster vorgesehen sein.
5. System zur frei spezifizierbaren Echtzeit-Steuerung von animierten Grafiken, Video- und/oder Audiosequenzen
In einem weiteren Ausführungsbeispiel der vorliegenden Erfindung ist ein System zur frei spezifizierbaren Echtzeit-Steuerung von animierten Grafiken, Video- und/oder Audiosequenzen vorgesehen. Das System weist dabei einen Speicher auf, in dem zur Erzeugung und/oder Beeinflussung von animierten Grafiken, Video- und/oder Audiosequenzen in Echtzeit wenigstens ein vordefiniertes parametrisiertes Bewegungs-, Oberflächen-, Klang- und/oder Beleuchtungsmuster als Referenzmuster hinterlegt ist. Das System weist weiterhin eine Recheneinheit zur
P 24392 DE
33
Auswertung von Ansteuersignalen verschiedener Freiheitsgrade von einem Eingabegerät als Parameterwerte zur Erzeugung und/oder Beeinflussung von animierten Grafiken, Video- und/oder Audiosequenzen mit Hilfe mindestens eines hinterlegten Referenzmusters auf. Darüber hinaus ist auch eine Einstelleinheit vorgesehen, um eine frei wählbare Zuordnung von Ansteuersignalen jeweils eines Freiheitsgrads zu einem bestimmten Referenzmuster zu ermöglichen. Diese Einstelleinheit kann dabei optional die Zuordnung von zeitlichen Ableitungen der Ansteuersignale zu einem bestimmten Referenzmuster ermöglichen. Ferner kann sie eine frei wählbare Einstellung von Kopplungsparametern der Zuordnung, wie beispielsweise der zeitlichen Dämpfung und der Verstärkung, bewerkstelligen.
Auswertung von Ansteuersignalen verschiedener Freiheitsgrade von einem Eingabegerät als Parameterwerte zur Erzeugung und/oder Beeinflussung von animierten Grafiken, Video- und/oder Audiosequenzen mit Hilfe mindestens eines hinterlegten Referenzmusters auf. Darüber hinaus ist auch eine Einstelleinheit vorgesehen, um eine frei wählbare Zuordnung von Ansteuersignalen jeweils eines Freiheitsgrads zu einem bestimmten Referenzmuster zu ermöglichen. Diese Einstelleinheit kann dabei optional die Zuordnung von zeitlichen Ableitungen der Ansteuersignale zu einem bestimmten Referenzmuster ermöglichen. Ferner kann sie eine frei wählbare Einstellung von Kopplungsparametern der Zuordnung, wie beispielsweise der zeitlichen Dämpfung und der Verstärkung, bewerkstelligen.
KURZBESCHREIBUNG DER ZEICHNUNGEN
Weitere Eigenschaften, Merkmale, Vorteile und Zweckmäßigkeiten der zugrunde liegenden Erfindung resultieren aus den untergeordneten abhängigen Patentansprüchen sowie aus der folgenden Beschreibung der bevorzugten Ausführungsbeispiele der Erfindung, welche in den folgenden Zeichnungen abgebildet sind. Hierin zeigen:
FIG. 1 ein vereinfachtes Blockdiagramm zur Veranschaulichung der Ein- und Ausgabesignale der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen nach dem bevorzugten Ausführungsbeispiel der zugrunde liegenden Erfindung,
FIG. 2 eine detailliertes Blockdiagramm zur Veranschaulichung der Komponenten sowie der Ein- und Ausgabesignale der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen,
FIG. 3 ein Ablaufdiagramm zur Veranschaulichung der von
• ·
• ·
• ·
P 24392 DE
34
der frei spezifizierbaren Echtzeit-Steuerung 102
der frei spezifizierbaren Echtzeit-Steuerung 102
für animierte Grafiken, Video- und/oder Audiosequenzen durchgeführten Aktionen,
FIG. 4 ein Blockdiagramm zur Veranschaulichung der Steuerung einzelner oder mehrerer akustischer Parameter digitalisierter Klangmuster durch· ein System, bestehend aus einem Computer, dessen Steuereinheit 401 mit mindestens einem elektronischen Musikinstrument 402 über eine MIDI-Schnittstelle leitend verbunden ist und einem 3D-Eingabegerät 104 zur Eingabe von parametrisierten Ansteuersignalen für die Echtzeit-Bewegungssteuerung virtueller Objekte, die auf einem Bildschirm dargestellt werden können, und
FIG. 5 ein Blockdiagramm zur Veranschaulichung der Steuerung einzelner oder mehrerer akustischer Parameter digitalisierter Klangmuster durch ein System, bestehend aus einem Computer, der über einen elektronischen Tongenerator 502 und eine Sound-Karte 510 verfügt, und einem 3D-Eingabegerät 104 zur Eingabe von parametrisierten Ansteuersignalen für die Echtzeit -Bewegungssteuerung virtueller Objekte, die auf einem Bildschirm dargestellt werden können.
DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
Im Folgenden werden die Funktionen der in einem ersten Ausführungsbeispiel der vorliegenden Erfindung enthaltenen Baugruppen, wie in den Figuren 1 bis 5 abgebildet, näher beschrieben.
Bezugnehmend auf Figur 1, soll die vorliegende Erfindung zunächst schematisch erläutert werden. Die Mensch-Maschine-Schnittstelle wird repräsentiert durch das Eingabegerät 104. Dabei handelt es sich insbesondere um ein sogenanntes 3D-Ein-
P 24392 DE
35
gabegerät, das beispielsweise Ansteuersignale 116 für sechs voneinander unabhängige Freiheitsgrade erzeugen kann, wenn es entsprechend durch einen Benutzer manipuliert wird. Diese Freiheitsgrade umfassen beispielsweise drei translatorische Freiheitsgrade, die im Folgenden als x, y und &zgr; bezeichnet werden, sowie drei rotatorische Freiheitsgrade, die im Folgenden als &phgr;&khgr;, <py und &phgr;&zgr; bezeichnet werden. Dabei bezeichnen die Variablen x, y und &zgr; die orthogonalen Achsen eines dreidimensionalen kartesischen Koordinatensystems. Dieses lässt sich mathematisch als dreidimensionaler Vektorraum V beschreiben, der durch eine Orthonormalbasis, bestehend aus den orthonormalen Einheitsvektoren ex, ey und e2, repräsentiert wird. Werden diese Variablen in Vektorschreibweise zusammengefasst, so ergeben sich zu jedem diskreten Zeitpunkt &eegr; (nach Weglassen der Einheiten):
gabegerät, das beispielsweise Ansteuersignale 116 für sechs voneinander unabhängige Freiheitsgrade erzeugen kann, wenn es entsprechend durch einen Benutzer manipuliert wird. Diese Freiheitsgrade umfassen beispielsweise drei translatorische Freiheitsgrade, die im Folgenden als x, y und &zgr; bezeichnet werden, sowie drei rotatorische Freiheitsgrade, die im Folgenden als &phgr;&khgr;, <py und &phgr;&zgr; bezeichnet werden. Dabei bezeichnen die Variablen x, y und &zgr; die orthogonalen Achsen eines dreidimensionalen kartesischen Koordinatensystems. Dieses lässt sich mathematisch als dreidimensionaler Vektorraum V beschreiben, der durch eine Orthonormalbasis, bestehend aus den orthonormalen Einheitsvektoren ex, ey und e2, repräsentiert wird. Werden diese Variablen in Vektorschreibweise zusammengefasst, so ergeben sich zu jedem diskreten Zeitpunkt &eegr; (nach Weglassen der Einheiten):
der Ortsvektor &khgr; (&eegr;) := [&khgr; (&eegr;) , &ggr; (&eegr;) , &zgr; (&eegr;) ] e
und
vj
der Drehrichtungsvektor &phgr; (&eegr;) := [&phgr;* (&eegr;) , &phgr;^ (&eegr;) , &phgr;&zgr; (&eegr;) ] e
Der transformierte Ortsvektor xT(x,Ax), der sich nach der Translation eines Punktobjekts P mit dem Ortsvektor &khgr; um die Wegdifferenzen Ax, Ay und Az in Richtung der jeweiligen Achsen x, y bzw. &zgr; ergibt, kann in diesem Vektorraum V auf einfache Weise durch Addition des Ortsvektors &khgr; und einer Linearkombination der orthonormalen Einheitsvektoren ev, ev und
ez ausgedrückt werden:
tu . tu . in. vj . vj
xT (x ,Ax) : = &khgr; + Ax
. j_ . VJ
A
VS
. VJ
A^WA A A
mit Ax := Ax-ex + Ay-e + Az-ez V Ax,Ay,Az e
Die Variablen &phgr;*, &phgr;^ und #?z bezeichnen die Drehrichtung virtueller Objekte um die x-, y- bzw. z-Achse dieses Koordinaten-
P 24392 DE
36
systems. Der transformierte Ortsvektor &khgr;&kgr;(&khgr;,&Dgr;&phgr;), der sich
systems. Der transformierte Ortsvektor &khgr;&kgr;(&khgr;,&Dgr;&phgr;), der sich
nach der Rotation eines Punktobjekts P mit dem Ortsvektor &khgr;
um die Drehwinkel Ag^1 &Agr;&psgr;&ggr; bzw. &Agr;&phgr;&zgr; ergibt, kann in diesem
Vektorraum V wie folgt ausgedrückt werden:
um die Drehwinkel Ag^1 &Agr;&psgr;&ggr; bzw. &Agr;&phgr;&zgr; ergibt, kann in diesem
Vektorraum V wie folgt ausgedrückt werden:
xjj (&khgr;,&Agr;&phgr;&khgr;&igr; A(Py1 &Agr;&phgr;&zgr;) := Rz(Acpz) ■ Ry(A9y) ·
mit &Dgr;&phgr; := [ACpx, &Agr;(&rgr;&ggr;,&Agr;&phgr;&zgr;] &tgr; V
mit &Dgr;&phgr; := [ACpx, &Agr;(&rgr;&ggr;,&Agr;&phgr;&zgr;] &tgr; V
wobei die Drehmatrizen Rx(ACpx), Ry(Acpy) und Rz(AcpJ wie folgt
definiert sind:
definiert sind:
&Xgr;&iacgr;&eegr;(&Dgr;&phgr;&khgr;)
0 sin(Acpy)
und
Selbstverständlich können z.B. mit Hilfe von Tastensteuerungen oder Schaltern verhältnismäßig einfach noch weitere Freiheitsgrade hinzugefügt werden. Dabei ist anzumerken, dass
Schalter bzw. Tasten in der Regel binäre Ansteuersignale
(Ein/Aus) erzeugen, wohingegen die oben genannten drei translatorischen Freiheitsgrade x, y bzw. &zgr; bzw. die drei rotatorischen Freiheitsgrade &phgr;*, <Py bzw. &phgr;&zgr; jeweils analoge Ansteuersignale ergeben können, die dann beispielsweise bei byte-
Schalter bzw. Tasten in der Regel binäre Ansteuersignale
(Ein/Aus) erzeugen, wohingegen die oben genannten drei translatorischen Freiheitsgrade x, y bzw. &zgr; bzw. die drei rotatorischen Freiheitsgrade &phgr;*, <Py bzw. &phgr;&zgr; jeweils analoge Ansteuersignale ergeben können, die dann beispielsweise bei byte-
• *
P 24392 DE
37
weiser Kodierung in 28 = 256 Stufen als digitale Signale zur
weiser Kodierung in 28 = 256 Stufen als digitale Signale zur
weiteren Verarbeitung zur Verfügung stehen.
Da die drei translatorischen und die drei rotatorischen Freiheitsgrade x, y, &zgr;, &phgr;*, &psgr;&ggr; bzw. &phgr;&zgr; als „Analogsignale" bzw. in 256 Stufen quantisierte digitale Signale aufzufassen sind, kann gemäß der vorliegenden Erfindung auch die zeitliche Veränderung dieser Ansteuersignale 116 durch die weiter unten dann näher beschriebene frei spezifizierbare Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen ausgewertet werden. Insbesondere ist es also möglich, zu jedem diskreten Zeitpunkt &eegr; (nach Weglassen der Einheiten) die dreidimensionalen Vektoren für
die Geschwindigkeit &ngr; (&eegr;) := [j&(n) ,
die Beschleunigung a\n) := [Ä(n) , #(n) , Jfe(n) ] T e «*3, die Winkelgeschwindigkeit &ohgr; (&eegr;) : = [ißt (&eegr;) , &phgr;^ (&eegr;) , (ßcz (&eegr;) ] &tgr; e
sowie
die Winkelbeschleunigung &agr; (&eegr;) := [&phgr;&egr; (&eegr;) , <&bgr;£ (&eegr;) , &phgr;| (&eegr;) ]&tgr; e
der Freiheitsgrade &khgr;, y, &zgr;, &phgr;&khgr;, &psgr;&ggr; bzw. &phgr;&zgr; zu erfassen und gegebenenfalls als weitere Freiheitsgrade unabhängig von dem Absolutwert der jeweiligen Ansteuersignale 116 zu verwerten. Dabei sind seitens des Eingabegeräts 104 keine weiteren Sensoren (z.B. Geschwindigkeits- bzw. Beschleunigungssensoren) notwendig.
Während also eingabeseitig die Ansteuersignale 116 von dem 3D-Eingabegerät 104 der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen gemäß der vorliegenden Erfindung zugeführt werden, gibt diese abhängig von diesen Ansteuersignalen 116 Animations-
P 24392 DE
38
Ausgabesignale 120 aus, mit Hilfe derer eine 3D-Animation beispielsweise auf dem Bildschirm eines Computer erzeugt werden kann. Diese 3D-Animation 114 kann folgendes umfassen:
Ausgabesignale 120 aus, mit Hilfe derer eine 3D-Animation beispielsweise auf dem Bildschirm eines Computer erzeugt werden kann. Diese 3D-Animation 114 kann folgendes umfassen:
- ansteuerbare Bewegungsmuster 106 wenigstens eines bewegbaren Gelenkkörpers,
- ansteuerbare Oberflächenmuster 108 des Gelenkkörpers und/oder seiner Umgebung,
- ansteuerbare Klangmuster 110 und/oder
- ansteuerbare Beleuchtungsmuster 112 für den Gelenkkörper und/oder seine Umgebung.
Dabei ist darauf hinzuweisen, dass die Erzeugung dieser SD-Animation 114 bezüglich der Ansteuersignale 116 in Echtzeit ausgeführt wird. Es ist also im Gegensatz zu manchen bekannten Beispielen nach dem Stand der Technik normalerweise nicht notwendig, Ton- oder Bildsequenzen vorab abzuspeichern, um sie dann auf Knopfdruck auszulösen.
Ein großer Vorteil der vorliegenden Erfindung ist es, dass für eine neu zu erzeugende 3D-Animation 114 nicht eine vollständig neue Programmierung erfolgen muß, wie es nach dem Stand der Technik der Fall ist. Vielmehr können gespeicherte Bewegungsmuster 106, Oberflächenmuster 108, Klangmuster 110 und/oder Beleuchtungsmuster 112 schnittstellenartig mit der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen verbunden werden. Durch Austausch bzw. erneute Spezifikation wenigstens eines der genannten Muster kann in einfacher Weise eine völlig neuartige 3D-Animation 114 erzeugt werden. Der Programmieraufwand zur Erstellung einer neuen 3D-Animation 114 wird somit deutlich verringert.
P 24392 DE
Da das Gehirn bei verschiedenen Tiergattungen sowie beim Menschen im Zuge der Evolution hinsichtlich der räumlichen Wahrnehmung und Verarbeitung von Bewegungsmustern äußerst komplexe Informationsmengen pro Zeiteinheit verarbeiten kann, wird in einem bevorzugten Ausführungsbeispiel der zugrunde liegenden Erfindung in einfacher Weise auf diese erlernten und vererbten Fähigkeiten zurückgegriffen, indem bekannte Bewegungsmuster modulartig über eine standardisierte Schnittstelle der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen zur Verfügung gestellt werden.
Es ist anzumerken, dass das 3D-Eingabegerät 104 nur ein Beispiel für ein Eingabegerät zur Erzeugung von Ansteuersignalen 116 darstellt. Grundsätzlich ist jede andere Art von Eingabegerät ebenfalls geeignet, wobei indessen das 3D-Eingabegerät 104 den großen Vorteil aufweist, dass die Eingabe von Ansteuersignalen 116 von unterschiedlichen Freiheitsgraden in besonders intuitiver Weise erfolgen kann. Hinsichtlich der konkreten Ausführungsformen von solchen 3D-Eingabegeräten 104 wird auf den in der Beschreibungseinleitung zitierten Stand der Technik verwiesen. Derartige Produkte sind beispielsweise von der Firma LogiCad3d im Handel erhältlich.
Bezugnehmend auf Figur 2 soll nunmehr im Detail der Aufbau der erfindungsgemäßen frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen erläutert werden. Die grau unterlegten Pfeile 116 und 120 zeigen die in Echtzeit ablaufende Ein- bzw. Ausgabe von Signalen von bzw. zu der frei spezifizierbaren Echtzeit-Steuerung 102, nämlich die Ansteuersignale 116 (x, y, &zgr;, &phgr;^, <py bzw. &phgr;&zgr;) von dem 3D-Eingabegerät 104 und die Animations-Ausgabedaten 120.
• * 9
• ·
P 24392 DE
40
Wie aus Figur 2 ersichtlich, werden die Ansteuersignale 116 einem Freispezifizierungsmodul 2 02 zugeführt. Eine Funktion des Freispezifizierungsmoduls 2 02 ist es, aus den Absolutwerten der eingegebenen „Analogdaten" x, y, z, Ipx, cpy bzw. &phgr;&zgr; die ersten zeitlichen Ableitungen (Geschwindigkeiten bzw. Winkelgeschwindigkeiten) bzw. die zweiten zeitlichen Ableitungen (Beschleunigungen bzw. Winkelbeschleunigungen) zu ermitteln. Somit kann ohne Zuhilfenahme eines zusätzlichen Sensors (Beschleunigungssensor) beispielsweise die Geschwindigkeit und die Beschleunigung bezüglich der genannten „Analogdaten" unter den Ansteuersignalen 116 ermittelt werden.
Wie aus Figur 2 ersichtlich, werden die Ansteuersignale 116 einem Freispezifizierungsmodul 2 02 zugeführt. Eine Funktion des Freispezifizierungsmoduls 2 02 ist es, aus den Absolutwerten der eingegebenen „Analogdaten" x, y, z, Ipx, cpy bzw. &phgr;&zgr; die ersten zeitlichen Ableitungen (Geschwindigkeiten bzw. Winkelgeschwindigkeiten) bzw. die zweiten zeitlichen Ableitungen (Beschleunigungen bzw. Winkelbeschleunigungen) zu ermitteln. Somit kann ohne Zuhilfenahme eines zusätzlichen Sensors (Beschleunigungssensor) beispielsweise die Geschwindigkeit und die Beschleunigung bezüglich der genannten „Analogdaten" unter den Ansteuersignalen 116 ermittelt werden.
Eine zweite wichtige Funktion des Freispezifizierungsmoduls 202 ist es, die Ansteuersignale 116 der verschiedenen Freiheitsgrade den Komponenten zur Erzeugung und/oder Beeinflussung der Grafiken, Bild- bzw. Tonsequenzen, also dem Bewegungsgenerator 204, dem Oberflächengenerator 206, dem Akustikgenerator 208 bzw. dem Beleuchtungsgenerator 210, zuzuordnen. Es kann also beispielsweise für den Benutzer eine Maske bei der Initialisierung der erfindungsgemäßen Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen vorgesehen sein, die dem Benutzer den Zugriff auf das Freispezifizierungsmodul 202 derart ermöglicht, dass der Benutzer je einen Freiheitsgrad der Ansteuersignale 116 einer der oben genannten Komponenten zur Erzeugung und/oder Beeinflussung der Grafiken, Bild- bzw. Tonsequenzen zuordnen kann.
Darüber hinaus kann der Benutzer mit Hilfe dieses Freispezifizierungsmoduls 202 die Kopplungsparameter der Zuordnung von Ansteuersignalen zu abgespeicherten Referenzmustern frei einstellen, wie beispielsweise zur Durchführung einer spektralen Filterung zur Dämpfung bzw. Verstärkung der Signalkomponenten von Audiosignalen in vorgebbaren Frequenzbereichen. Die einstellbaren Kopplungsparameter legen dabei die zeitliche Kopplung sowie die Dämpfung bzw. Verstärkung der Veränderung des
P 24392 DE
41
entsprechenden Referenzmusters abhängig von dem zugewiesenen Ansteuersignal und somit das Signalantwortverhalten des Systems fest. Abhängig von der Spezifizierung durch den Benutzer bewirkt also das Freispezifizierungsmodul 202, dass die Kopplungsparameter der Zuordnung - wie zum Beispiel die Dämpfung bzw. Verstärkung - frei einstellbar sind. Werden beispielsweise die Kopplungsparameter bezüglich des Bewegungsmusters einer Gehbewegung des Gelenk-Objekts verändert, kann von einer dynamischen auf eine hinkende Gehbewegung stufenlos umgestellt werden. Erfindungsgemäß können dadurch ebenfalls verschiedene Stimmungen oder Emotionen, ausgedrückt durch die Mimik eines dargestelltes Gesichts, eingestellt werden. Die Bewegungsmuster können dabei wie folgt mit den Stimmungsmustern gekoppelt sein:
entsprechenden Referenzmusters abhängig von dem zugewiesenen Ansteuersignal und somit das Signalantwortverhalten des Systems fest. Abhängig von der Spezifizierung durch den Benutzer bewirkt also das Freispezifizierungsmodul 202, dass die Kopplungsparameter der Zuordnung - wie zum Beispiel die Dämpfung bzw. Verstärkung - frei einstellbar sind. Werden beispielsweise die Kopplungsparameter bezüglich des Bewegungsmusters einer Gehbewegung des Gelenk-Objekts verändert, kann von einer dynamischen auf eine hinkende Gehbewegung stufenlos umgestellt werden. Erfindungsgemäß können dadurch ebenfalls verschiedene Stimmungen oder Emotionen, ausgedrückt durch die Mimik eines dargestelltes Gesichts, eingestellt werden. Die Bewegungsmuster können dabei wie folgt mit den Stimmungsmustern gekoppelt sein:
| Bewegungs- | Dargestellte | Stimmungs- | Dargestellte |
| muster | Charakter- | muster | Gesichts |
| (Parameter #1) | Figur | (Parameter #2) | mimik |
| dynamischer | junger | lustig, | Lächeln, |
| Gang, schnelle | Sportler | lebensfroh | Augenzwinkern, |
| Bewegungen | etc. | ||
| hinkender | alter | traurig, | hängende Mund |
| Gang, 1angs ame | Mann | schwermütig | winkel , |
| und vorsichtige | Stirnrunzeln | ||
| Bewegungen | etc. |
Der Benutzer kann also stufenlos zwischen der Gehbewegung eines jungen Sportlers und der eines alten Mannes auswählen und, damit gekoppelt, in einfacher Weise verschiedene Charaktere und/oder Stimmungen auswählen.
P 24392 DE , ..·♦
42
Im Sinne einer höherwertigen Zuordnung ist es auch möglich, anstelle der Einstellung einzelner Kopplungsparameter lediglich im Zuge der Spezifizierung den Charakter (jung/alt etc.) und/oder die Stimmung (lustig/traurig etc.) anzuwählen, wobei das Freispezifizierungsmodul 2 02 dann automatisch die einzelnen Kopplungsparameter (beispielsweise für den Gang, das Gesicht etc.) einstellt. Anstelle der Einstellung einzelner Kopplungsparameter ermöglicht diese höherwertige (verknüpfte) Zuordnung also die Wahl eines Charakters und/oder einer Stimmung. Die Wahl der Stimmung kann dabei Einfluß auf verschiedene Muster haben, so dass beispielsweise gleichzeitig die Vertonung, die Szenenbeleuchtung und die Bewegung verändert werden. Es können also durch eine Aktion des Benutzers sowohl mehrere Kopplungsparameter eines Musters wie auch mehrere Kopplungsparameter verschiedener Muster (Bewegung, Oberfläche, Bild und/oder Ton) automatisch verändert werden. Somit können Choreographien erstellt werden, die eine Echtzeit-Ansteuerung einer Charakter-Figur und des Hintergrunds verwenden .
Im Sinne einer höherwertigen Zuordnung ist es auch möglich, anstelle der Einstellung einzelner Kopplungsparameter lediglich im Zuge der Spezifizierung den Charakter (jung/alt etc.) und/oder die Stimmung (lustig/traurig etc.) anzuwählen, wobei das Freispezifizierungsmodul 2 02 dann automatisch die einzelnen Kopplungsparameter (beispielsweise für den Gang, das Gesicht etc.) einstellt. Anstelle der Einstellung einzelner Kopplungsparameter ermöglicht diese höherwertige (verknüpfte) Zuordnung also die Wahl eines Charakters und/oder einer Stimmung. Die Wahl der Stimmung kann dabei Einfluß auf verschiedene Muster haben, so dass beispielsweise gleichzeitig die Vertonung, die Szenenbeleuchtung und die Bewegung verändert werden. Es können also durch eine Aktion des Benutzers sowohl mehrere Kopplungsparameter eines Musters wie auch mehrere Kopplungsparameter verschiedener Muster (Bewegung, Oberfläche, Bild und/oder Ton) automatisch verändert werden. Somit können Choreographien erstellt werden, die eine Echtzeit-Ansteuerung einer Charakter-Figur und des Hintergrunds verwenden .
Abhängig von der Spezifizierung durch den Benutzer ordnet das Freispezifizierungsmodul 202 die entsprechenden Ansteuersignale 116 wie folgt zu:
- als parametrisierte Bewegungs-Ansteuersignale 212 einem Bewegungsgenerator 2 04,
- als parametrisierte Oberflächen-Ansteuersignale 214 einem Oberflächengenerator 206,
- als parametrisierte Akustik-Ansteuersignale 216 einem Akustikgenerator 2 08 und/oder
- als parametrisierte Beleuchtungs-Ansteuersignale 218 einem Beleuchtungsgenerator 210.
P 24392 DE ··..·*» .".'"J .**. "I
43
Der Bewegungsgenerator 2 04 verknüpft die ihm zugewiesenen Bewegungs-Ansteuersignale 212 mit wenigstens einem vordefinierten parametrisierten Bewegungsmuster 106 zur Erzeugung von Bewegungs-Animations-Ausgabesignale 220. Somit können also verschiedene Bewegungsmuster des virtuellen Gelenk-Objekts (z.B. Gehen in verschiedenen Richtungen, Bücken oder Springen etc.) in Echtzeit angesteuert werden.
Der Bewegungsgenerator 2 04 verknüpft die ihm zugewiesenen Bewegungs-Ansteuersignale 212 mit wenigstens einem vordefinierten parametrisierten Bewegungsmuster 106 zur Erzeugung von Bewegungs-Animations-Ausgabesignale 220. Somit können also verschiedene Bewegungsmuster des virtuellen Gelenk-Objekts (z.B. Gehen in verschiedenen Richtungen, Bücken oder Springen etc.) in Echtzeit angesteuert werden.
Der Oberflächengenerator 2 06 verknüpft die ihm zugewiesenen Oberflächen-Ansteuersignale 214, die durch den Bewegungsgenerator 204 erzeugten Bewegungs-Animations-Ausgabesignale 220 sowie Daten von wenigstens einem vorgegebenen parametrisierten Oberflächenmuster 108 zur Erzeugung von Oberflächen-Ausgabesignale 222. Somit kann beispielsweise eine Struktur-, Färb-, Farbsättigungs- bzw. Helligkeitsänderung bestimmter Flächen eines bewegten Objekts und/oder seiner Umgebung eingeleitet werden.
Der Akustikgenerator 2 08 verknüpft dabei die ihm zugeordneten Akustik-Ansteuersignale 216 mit wenigstens einem parametrisierten vordefinierten Klangmuster 110. Das Produkt dieser Verknüpfung sind die Klang-Ausgabesignale 224, die einen Teil der Animations-Ausgabesignale 120 darstellen. Die gespeicherten Klangmuster können beispielsweise parametrisierte digitale Audiodateien sein.
In entsprechender Weise verknüpft der Beleuchtungsgenerator 210 die ihm zugewiesenen Beleuchtungs-Ansteuersignale 218 mit wenigstens einem vordefinierten parametrisierten Beleuchtungsmuster 112 zur Erzeugung von Beleuchtungs-Ausgabesignale 226. Das Beleuchtungsmuster 112 kann dabei ein virtuelles Objekt und/oder seine Umgebung betreffen.
Wie bereits ausgeführt sind die vordefinierten Bewegungsmuster 106, Oberflächenmuster 108, Klangmuster 110 und Beleuch-
P 24392 DE
tungsmuster 112 jeweils parametrisiert, so dass die entsprechenden zugeordneten Ansteuersignale durch den Bewegungsgenerator 2 04, den Oberflächengenerator 2 06, den Akustikgenerator 208 bzw. den Beleuchtungsgenerator 210 als Parameterwerte verwendet werden können, um eine Echtzeitsteuerung der entsprechenden Muster abhängig von den Ansteuersignalen 116 auszuführen, wobei sich die Echtzeit-Ansteuerung der entsprechenden Muster in der entsprechenden Veränderung der erzeugten Animationsdaten 220, 222, 224 und 226 niederschlägt, die insgesamt zu den Animations-Ausgabesignalen 120 zusammengefaßt werden.
Der Benutzer kann also durch entsprechende Manipulation des Eingabegeräts 104 und der entsprechenden Zuordnung durch das Freispezifizierungsmodul 202 (die durch den Benutzer selbst oder vorab durch den Hersteller eingestellt wurde) in Echtzeit die Bewegungsmuster 106, die Oberflächenmuster (Geometrien, Texturen, etc.) 108, die Klangmuster 110 und/oder die Beleuchtungsmuster 112 ansteuern. Dabei kann er einerseits vordefinierte Muster auslösen, wozu beispielsweise ein Schalter am Eingabegerät 104 verwendet werden kann. Andererseits kann er unter Verwendung der „Analogansteuersignale" x, y, z, &phgr;&khgr;, (py bzw. &phgr;&zgr; eine Echtzeit-Steuerung der genannten Muster ausführen.
Die Funktion der Generatoren 204, 206, 208 und 210 soll dabei anhand des Bewegungsgenerators 204 im Detail erläutert werden :
Es wird vorausgesetzt, dass im Zuge der Animation ein Gelenkkörper in Echtzeit angesteuert werden soll. Der Bewegungsgenerator 204 berechnet also in diesem Fall laufend abhängig von den Bewegungs-Ansteuersignalen 212 die neue Position und Orientierung der Gelenke des Gelenkkörpers.
P 24392 DE .. » ·--..
Ein Bewegungsmuster 106 wird also beispielsweise wie folgt definiert: Zuerst werden Skelettdaten definiert, die die Art und Lage der Gelenke des Gelenkkörpers beschreiben. Neben der Lage der Gelenke (Position) wird dabei auch die Art der Gelenke (beschreibbar durch Art und Anzahl der Freiheitsgrade) definiert. Für jedes Gelenk j der J Gelenke eines betrachteten virtuellen Gelenk-Objekts kann beispielsweise folgender String Sj definiert werden:
10
10
Sj := {Namej, Positionj, Freiheitsgradej,
Maximale_Amplitudej, Dämpfungj, . . . }
für 1 < j < J
Ein Bewegungsablauf besteht also dann aus einer Liste oder einer Funktion, die festlegt, welches der definierten Gelenke sich abhängig von den parametrisierten Ansteuersignalen wann und wie bewegt. Ein Bewegungsablauf kann somit beispielsweise durch eine Liste der „abzuarbeitenden" Gelenke bestehen. Pro Zyklus wird also durch Abarbeiten der Liste oder einer Funktion berechnet, welche neue Position und/oder Orientierung der Gelenke sich aus den Einzelbeiträgen der verschiedenen Gelenke abhängig von den Ansteuersignalen ergibt.
Zu einem Zeitpunkt &eegr; berechnet sich also die Position eines Gelenks, definiert durch die Koordinaten x, y, z, sowie dessen Orientierung, definiert durch die Winkelkoordinaten &phgr;*, <Py bzw. <pz, wie folgt:
■ · · ■
P 24392 DE
| &eegr; | '&khgr;&Ngr; | 46 | &eegr;-1 | &iacgr;&Dgr;&khgr;0 | |
| y | |||||
| y |
&zgr;
Φ&khgr; |
&Dgr;&phgr;&khgr; · &Agr;&phgr; |
|||
|
&zgr;
Φ&khgr; |
,<&Rgr;&zgr;, | j + &Sgr; |
&Dgr;&phgr;&zgr; . | ||
(D
Diese Gleichung (1) wird also für jedes in den Skelettdaten definierte Gelenk berechnet. Die neue Position und Orientierung eines Gelenks zum Zeitpunkt &eegr; berechnet sich somit aus der Position im vorherigen Zyklus n-1 zuzüglich der neuen,
von den Ansteuersignalen abhängigen Beiträgen
von den Ansteuersignalen abhängigen Beiträgen
Axjf Ay.,, Azj( A<px>j, A(pyj und Aq>I(j .
Jedes Gelenk j liefert somit einen Änderungsbeitrag für die Position und Orientierung jedes Gelenks, sich selbst eingeschlossen.
Die Beiträge eines jeden Gelenks j zur Verschiebung der Position bzw. Orientierung eines jeden anderen Gelenks sowie desselben Gelenks werden nach der folgenden Formel berechnet:
j, Äy-j, &Dgr;&zgr; j, &Agr;&phgr;&KHgr;) j, &Dgr;<^# j, &Agr;&phgr;&zgr; , j ]
mit fj: \?»
18
V j e {1,2,3, ...,J}.
Die vektorwertige Funktion fj stellt dabei eine Repräsentation dar, wie ein bestimmter Bewegungsablauf, z.B. der Gang eines Menschen, standardisiert wiedergegeben werden kann.
Bezugnehmend auf das Flußdiagramm von Figur 3, soll nun
schließlich nochmals der Ablauf gemäß der vorliegenden Erfindung erläutert werden. Die Schritte 301a, 301b und 301c be-
schließlich nochmals der Ablauf gemäß der vorliegenden Erfindung erläutert werden. Die Schritte 301a, 301b und 301c be-
P 24392 DE
ziehen sich dabei auf einen Einstellungs- und Zuweisungsvorgang in dem Freispezifizierungsmodul 202. Dieser Vorgang kann entweder durch den Benutzer oder aber auch vorab festgelegt sein. Nach dem Start in Schritt 301a kann also der Benutzer und/oder ein Programmierer durch das Freispezifizierungsmodul 202 die einzelnen Ansteuersignale 116 der verschiedenen Freiheitsgrade verschiedenen Mustern (Bewegungsmustern 106, Oberflächenmustern 108, Klangmustern 110 und/oder Beleuchtungsmustern 112) zuweisen. In einem Schritt 301c können dann die Kopplungsparameter zwischen den Ansteuersignalen und den tatsächlich in Echtzeit ausgeführten Änderungen der entsprechenden Muster eingestellt werden. Diese Kopplungsparameter können beispielsweise die Dämpfung und die Verstärkung von Klangmustern betreffen.
Bei dem Start einer Echtzeit-Animation im Schritt 3 02 werden dann in einem Schritt 3 04 die Ansteuersignale von dem 3D-Eingabegerät 104 an die Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen weitergegeben. In einem Schritt 3 06 werden dann die Ansteuersignale ausgewertet, wobei beispielsweise die ersten und zweiten zeitlichen Ableitungen der „Analogsteuersignale" ermittelt werden. Zuletzt wird in einem Schritt 308 eine Zuweisung der Ansteuersignale der verschiedenen Freiheitsgrade zu den bereits oben genannten Bewegungsmustern 106, Oberflächenmustern 108, Klangmustern 110 und/oder Beleuchtungsmustern 112 ausgeführt.
Hinsichtlich des Beleuchtungsmusters 112 ist anzumerken, dass sowohl die Beleuchtungssituation für ein animiertes Gelenk-Objekt selbst wie auch die Beleuchtung des Hintergrunds bzw. verschiedener Szenen in Echtzeit durch entsprechende Zuordnung und Eingabe entsprechender Ansteuersignale 116 verändert werden kann.
P 24392 DE
Bezugnehmend auf das in Figur 4 schematisch dargestellte Ausführungsbeispiel der zugrunde liegenden Erfindung, kann zur Steuerung einzelner oder mehrerer akustischer Parameter digitalisierter Klangmuster 410 ein Verfahren bzw. ein System vorgesehen sein, das die folgenden Geräte verwendet:
- einen Computer, dessen Steuereinheit 401 mit mindestens einem elektronischen Musikinstrument 402 über eine MIDI-Schnittstelle 404a+b leitend verbunden ist und
- ein Eingabegerät 104 zur Eingabe von parametrisierten Ansteuersignalen 116 für die Echtzeit-Bewegungssteuerung virtueller Objekte, die auf einem Bildschirm dargestellt werden können.
Dabei können die digitalisierten Klangmuster 410 im Speicher mindestens eines elektronischen Musikinstruments 4 02 gemäß dem MIDI-Standard digital gespeichert und auf mindestens einem elektronischen Musikinstrument 402 gemäß dem MIDI-Standard generiert bzw. abgespielt werden. Einzelne oder mehrere dieser akustischen Parameter können dabei erfindungsgemäß mittels Steuerung der virtuellen Objekte durch ein Bewegen des Eingabegeräts 104 in Echtzeit erzeugt bzw. beeinflusst werden.
Wie in Figur 5 abgebildet, kann alternativ zur Steuerung einzelner oder mehrerer akustischer Parameter digitalisierter Klangmuster 512 nach einer Variation dieses Ausführungsbeispiels der zugrunde liegenden Erfindung ein Verfahren bzw. ein System vorgesehen sein, das die folgenden Geräte verwendet:
- einen Computer, dessen Steuereinheit 501 mit mindestens einer Sound-Karte 510 sowie mit mindestens einem Tongenerator 502 verbunden ist und
P 24392 DE
- ein Eingabegerät 104 zur Eingabe von parametrisierten Ansteuersignalen 116 für die Echtzeit-Bewegungssteuerung virtueller Objekte, die auf einem Bildschirm dargestellt werden können.
Dabei können die digitalisierten Klangmuster 512 im Speicher mindestens einer Sound-Karte 510 des Computers digital gespeichert sein und auf mindestens einem Tongenerator 502 desselben Computers generiert und abgespielt werden. Einzelne oder mehrere akustische Parameter der digital gespeicherten Klangmuster 512 können dabei erfindungsgemäß mittels Steuerung der virtuellen Objekte durch ein Bewegen des Eingabegeräts 104 in Echtzeit erzeugt bzw. beeinflusst werden.
Bei den ansteuerbaren virtuellen Objekten, die zur Erzeugung bzw. Beeinflussung einzelner oder mehrerer akustischer Parameter der digital gespeicherten Klangmuster 410 bzw. 512 durch ein Bewegen des Eingabegeräts 104 gesteuert werden, kann es sich zum Beispiel um die Steuerelemente, Tasten, Schalter, Drehknöpfe und/oder Schieberegler eines virtuellen Mischpults handeln, mit dessen Hilfe beispielsweise einzelne Frequenzbereiche des Obertonspektrums eines gespeicherten, digitalisierten Klangmusters 410 bzw. 512 gezielt gedämpft bzw. verstärkt werden können.
Bei dem Eingabegerät 104 kann es sich zum Beispiel um ein drahtloses Steuermedium handeln, das in drei Dimensionen bewegt werden kann ("3D-Maus") und das in der Lage ist, simultan parametrisierte Ansteuersignale 116 von Bewegungen in wenigstens sechs unabhängigen Freiheitsgraden in Echtzeit zu verarbeiten.
Bei den gesteuerten akustischen Parametern eines bestimmten digitalisierten Klangmusters 410 bzw. 512 kann es sich bei-
P 24392 DE
spielsweise um Tonhöhen, Noten- bzw. Pausenwerte, Lautstärken, Tempi, Artikulationsanweisungen, Klangfarben, Pedal-, Vibrato-, Chorus-, Hall-, Oberton- und/oder andere Spezialeffekte handeln.
5
5
Dabei können parametrisierte Ansteuersignale 116 von Bewegungen des Eingabegeräts 104 in drei translatorischen und drei rotatorischen Freiheitsgraden eingegeben werden. Darüber hinaus kann erfindungsgemäß vorgesehen sein, dass auch zeitliche Ableitungen der parametrisierten Ansteuersignale 116 ermittelt und verarbeitet werden können. Die Zuordnung von parametrisierten Ansteuersignalen 116 jeweils eines Freiheitsgrads zu einem oder mehreren Parametern eines bestimmten digitalisierten Klangmusters 410 bzw. 512 ist erfindungsgemäß frei spezifizierbar. Optional können auch die zeitlichen Ableitungen der parametrisierten Ansteuersignale 116 einem oder mehreren Parametern eines bestimmten digitalisierten Klangmusters 410 bzw. 512 zugeordnet werden. Die Kopplungsparameter der Zuordnung von parametrisierten Ansteuersignalen 116 können ebenfalls frei spezifiziert werden.
Die Bedeutung der mit Bezugszeichen versehenen Symbole in den Figuren 1 bis 5 kann der beigefügten Bezugszeichenliste entnommen werden.
25
25
P 24392 DE
Bezugszeichenliste
Symbol
vereinfachtes Blockdiagramm zur Veranschaulichung der Ein- und Ausgabesignale der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen nach dem bevorzugten Ausführungsbeispiel der zugrunde liegenden Erfindung
frei spezifizierbare Echtzeit-Steuerung von animierten Grafiken, Video- und/oder Audiosequenzen
3D-Eingabegerät zur Eingabe der Ansteuersignale
parametrisierte Bewegungsmuster für Gelenk-Objekte
parametrisierte Oberflächenmuster (Geometrien, Texturen) für Gelenk-Objekte
parametrisierte Klangmuster
parametrisierte Beleuchtungsmuster für Gelenk-Objekte und den Hintergrund virtueller Szenen
3D-Animation, angezeigt auf Computer-Bildschirm
Ansteuersignale vom 3D-Eingabegerät 104 für die frei spezifizierbare Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen
Übergabe der parametrisierten Bewegungsmuster 106, Oberflächenmuster 108, Klangmuster 110 und/oder Beleuchtungsmuster 112 als Referenzmuster an die entsprechenden Generatoren 204, 206, 208 und 210 in der frei spezifizierbare Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen
Animations-Ausgabesignale von der Echtzeit-Steuerung für animierte Grafiken, Video- und/oder Audiosequenzen für die 3D-Animation
Animations-Ausgabesignale von der Steuereinheit 401 eines Computers für die 3D-Animation
Status-Signale von der 3D-Animation 114 für die Steuereinheit 4 01 des Computers
detailliertes Blockdiagramm zur Veranschaulichung der Komponenten sowie der Ein- und Ausgabesignale der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen
Freispezifizierungsmodul zur Zuordnung der Ansteuersignale bzw. deren zeitlicher Ableitungen als Parameterwerte für die parametrisierten Bewegungsmuster 106, OberflächenmusterlO8, Klangmuster 110 bzw. Beleuchtungsmuster
Bewegungsgenerator zur Berechnung der Skelett-Anderungsdaten von Gelenk-Objekten auf Grundlage der Ansteuersignale 116 als Parameterwerte und wenigstens je eines parametrisierten Bewegungsmusters 106, wobei die Skelett-Änderungsdaten translatorische und/oder rotatorische Änderungen der Lage bzw. Orientierung der Gelenk-Objekte wiedergeben
Oberflächengenerator zur Berechnung der Oberfläche virtu-
P 24392 DE
Nr. Symbol
eller Gelenk-Objekte auf Grundlage ihrer Skelett-Anderungsdaten und wenigstens je eines Oberflächenmusters Akustikgenerator zur Erzeugung von Tonsequenzen, ausgehend von parametrisierten Klangmustern
Beleuchtungsgenerator zur Erzeugung von Beleuchtungs-Ausgabesignale, ausgehend von parametrisierten Beleuchtungsmustern
Bewegungs-Ansteuersignale vom Freispezifizierungsmodul zum Bewegungsgenerator 2
Oberflächen-Ansteuersignale vom Freispezifizierungsmodul 202 zum Oberflächengenerator 206
Klang-Ansteuersignale vom Freispezifizierungsmodul 202 für den Akustikgenerator 208
Beleuchtungs-Ansteuersignale vom Freispezifizierungsmodul 2 02 zum Beleuchtungsgenerator 210
Bewegungs-Animations-Ausgabesignale vom Bewegungsgenerator 2 04 zum Oberflächengenerator 2 06
Klang-Ausgabesignale vom Akustikgenerator 208 als Teil der Animations-Ausgabesignale 120
Ablaufdiagramm zur Veranschaulichung der von der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen durchgeführten Aktionen
Start der Setup-Phase (= Vorbereitung einer Echtzeit-Animation)
Voreinstellungen, Initialisierungen und Zuweisungen für das Freispezifizierungsmodul 202
Parameter-Voreinstellung (z.B. Dämpfung bzw. Verstärkung) Ende der Setup-Phase
Start der Steuer-Phase (= Start einer Echtzeit-Animation)
Zuweisung der Ansteuersignale
Erzeugung von Bewegungsdaten bzw. Beeinflussung von Bewegungsmustern 106 mit Hilfe der Animations-Ausgabesignale 120
Erzeugung von Oberflächendaten bzw. Beeinflussung von Oberflächenmustern 108 mit Hilfe der Animations-Ausgabesignale
Erzeugung von Klangdaten bzw. Beeinflussung von Klangmu-
stern 110 mit Hilfe der Animations-Ausgabesignale 120
Erzeugung von Beleuchtungsdaten bzw. Beeinflussung von Beleuchtungsmustern 112 mit Hilfe der Animations-Ausgabesignale 12
Blockdiagramm zur Veranschaulichung der Steuerung einzelner oder mehrerer akustischer Parameter digitalisierter Klangmuster durch ein System, bestehend aus einem Compu-
P 24392 DE
| Nr. | Symbol |
| ter, dessen Steuereinheit 401 mit mindestens einem elek tronischen Musikinstrument 402 über eine MIDI-Schnitt- stelle leitend verbunden ist und einem 3D-Eingabegerät 104 zur Eingabe von parametrisierten Ansteuersignalen für die Echtzeit-Bewegungssteuerung virtueller Objekte, die auf einem Bildschirm dargestellt werden können |
|
| 401 | Steuereinheit eines Computers |
| 402 | Masterkeyboard bzw. Synthesizer nach dem MIDI-Standard (hier: Keyboard mit 73 Tasten, d.h. mit einem Ambitus von sechs Oktaven) |
| 404a | MIDI/IN-Anschluss (Eingangsbuchse) des Masterkeyboards bzw. Synthesizers 402 |
| 404b | MIDI/OUT-Anschluss (Ausgangsbuchse) des Masterkeyboards bzw. Synthesizers 402 |
| 406 | Lautsprecheranschlussbuchse des Masterkeyboards bzw. Syn thesizers 402 |
| 408 | Lautsprecher |
| 410 | Speicher des Masterkeyboards bzw. Synthesizers 402, in dem eine Datenbank mit digitalisierten Klangmustern gespei chert ist |
| 412a | MIDI/IN-Signal von der Steuereinheit 401 des Computers zum Masterkeyboard bzw. Synthesizer 402 |
| 412b | MIDI/OUT-Signal vom Masterkeyboard bzw. Synthesizer 402 zur Steuereinheit 401 des Computers |
| 414 | Übergabe der digitalisierten Klangmuster 410 als Referenz muster an das Masterkeyboard bzw. den Synthesizer 402 |
| 500 | Blockdiagramm zur Veranschaulichung der Steuerung einzel ner oder mehrerer akustischer Parameter digitalisierter Klangmuster durch ein System, bestehend aus einem Compu ter, der über einen elektronischen Tongenerator 502 und eine Sound-Karte 510 verfügt, und einem 3D-Eingabegerät 104 zur Eingabe von parametrisierten Ansteuersignalen für die Echtzeit-Bewegungssteuerung virtueller Objekte, die auf einem Bildschirm dargestellt werden können |
| 501 | Steuereinheit des Computers, der über einen elektronischen Tongenerator 502 und eine Sound-Karte 510 verfügt |
| 502 | elektronischer Tongenerator des Computers nach dem MIDI- Standard |
| 504a | MIDI/IN-Signaleingang des elektronischen Tongenerators |
| 504b | MIDI/OUT-Signalausgang des elektronischen Tongenerators |
| 506 | Lautsprecheranschlussbuchse des Computers |
| 508 | Lautsprecher |
| 510 | Sound-Karte des Computers |
| 512 | Speicher der Sound-Karte 510, in dem eine Datenbank mit digitalisierten Klangmustern gespeichert ist |
| 514a | parametrisierte MIDI-Ansteuersignale von der Steuereinheit 501 des Computers zur Sound-Karte 510 |
| 514b | MIDI/IN-Signal von der Sound-Karte 510 zum elektronischen Tongenerator 5 02 |
P 24392 DE
| Symbol | 54 | Tongenerator | 502 zur | |
| Nr. | ||||
| 514c | MIDI/OUT-Signal vom elektronischen Steuereinheit 501 des Computers |
|||
• ·
• t
Claims (27)
1. System zur Echtzeit-Bewegungssteuerung eines Gelenk-Objekts, aufweisend: wobei die Mittel c), d) und e) zyklisch aktivierbar sind, um eine Echtzeit-Bewegungssteuerung des Gelenk-Objekts abhängig von den Ansteuersignalen (116) zu erhalten.
a) Mittel zur Definition von wenigstens einem parametrisierten Bewegungsmuster (106) für das Gelenk-Objekt,
b) Mittel zur Definition von wenigstens einem parametrisierten Oberflächenmuster (108) für das Gelenk-Objekt,
c) Mittel zur Eingabe von parametrisierten Ansteuersignalen (116) mittels eines 3D-Eingabegeräts (104),
d) Mittel zur Berechnung von Skelett-Änderungsdaten auf Grundlage der parametrisierten Ansteuersignale (116) sowie auf Grundlage von wenigstens einem parametrisierten Bewegungsmuster (106), wobei die Skelett-Änderungsdaten translatorische und/oder rotatorische Änderungen der Lage bzw. Orientierung der Gelenke des Gelenk-Objekts wiedergeben,
e) Mittel zur Berechnung der Oberfläche des Gelenk-Objekts auf Grundlage der Skelett-Änderungsdaten sowie auf Grundlage von wenigstens einem Oberflächenmuster (108),
2. System nach Anspruch 1, dadurch gekennzeichnet, dass weiterhin Mittel zur Erzeugung von Klangsignalen (224) durch Verknüpfung gespeicherter digitaler, parametrisierter Klangmuster (110) mit parametrisierten Ansteuersignalen (116) vorgesehen sind.
3. System nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass zeitliche Ableitungen der parametrisierten Ansteuersignale (116) ermittelbar und verarbeitbar sind.
4. System nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Zuordnung der parametrisierten Ansteuersignale (116) bzw. ihrer Ableitungen zu den Bewegungsmustern (106), Oberflächenmustern (108) bzw. Klangmustern (110) frei spezifizierbar ist.
5. System nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass weiterhin parametrisierte Beleuchtungsmuster (112) hinterlegbar sind, die zur Erzeugung von Beleuchtungseffekten mittels entsprechender Verknüpfungen mit parametrisierten Ansteuersignalen (116) verwendbar sinb.
6. System zur frei spezifizierbaren Echtzeit-Steuerung von animierten Grafiken, Video- und/oder Audiosequenzen, aufweisend
- Mittel zur Erzeugung von Bewegungs-, Oberflächen- und/oder Klangdaten auf Grundlage wenigstens eines vordefinierten parametrisiertes Bewegungsmusters (106), Oberflächenmusters (108) und/oder Klangmusters (110),
- Mittel zur Auswertung parametrisierter Ansteuersignale (116) verschiedener Freiheitsgrade von einem 3D- Eingabegerät (104) und zur Erzeugung von Bewegungsdaten (310), Oberflächendaten (312) und/oder Klangdaten (314) mit Hilfe der hinterlegten Bewegungsmuster (106), Oberflächenmuster (108) und/oder Klangmuster (110), und
- Mittel zur frei spezifizerbaren Zuordnung von parametrisierten Ansteuersignalen (116) jeweils eines Freiheitsgrads zu einem bestimmten Bewegungsmuster (106), Oberflächenmuster (108) und/oder Klangmuster (110).
7. System nach Anspruch 6, weiterhin aufweisend Mittel zur Zuordnung von zeitlichen Ableitungen der parametrisierten Ansteuersignale (116) zu einem bestimmten Bewegungsmuster (106), Oberflächenmuster (108) und/oder Klangmuster (110).
8. System nach Anspruch 6 oder 7, dadurch gekennzeichnet, dass Kopplungsparameter der Zuordnung von parametrisierten Ansteuersignalen (116), wie zum Beispiel Dämpfung und Verstärkung, frei spezifizierbar sind.
9. System zur Echtzeit-Bewegungssteuerung von virtuellen oder realen Gelenk-Objekten, wobei das System über einen Speicher verfügt, in dem wenigstens ein parametrisiertes Bewegungsmuster (106) und wenigstens ein parametrisiertes Oberflächenmuster (108) von einem Gelenk-Objekt abgelegt sind, und das System weiterhin aufweist:
- ein 3D-Eingabegerät (104) zur Eingabe von parametrisierten Ansteuersignalen (116) für die Echtzeit-Bewegungssteuerung,
- einen Bewegungsgenerator (204) zur Berechnung von Skelett- Änderungsdaten auf Grundlage der parametrisierten Ansteuersignale (116) und auf Grundlage von wenigstens einem parametrisierten Bewegungsmuster (106), wobei die Skelett-Änderungsdaten translatorische und/oder rotatorische Änderungen der Lage bzw. Orientierung der Gelenke des Gelenk-Objekts wiedergeben, sowie
- einen Oberflächengenerator (206) zur Berechnung der Oberfläche des Gelenk-Objekts auf Grundlage der Skelett- Änderungsdaten und des parametrisierten Oberflächenmusters (108).
10. System nach Anspruch 9, gekennzeichnet durch einen Klanggenerator (210) zur Erzeugung von Klangsignalen durch Verknüpfung von wenigstens einem digitalen parametrisierten Klangmuster (110) mit parametrisierten Ansteuersignalen (116).
11. System nach einem der Ansprüche 9 oder 10, gekennzeichnet durch ein Freispezifizierungsmodul (202) zur Ermittlung und Verarbeitung von zeitlichen Ableitungen der parametrisierten Ansteuersignale (116).
12. System nach einem der Ansprüche 9 bis 11, gekennzeichnet durch ein Freispezifizierungsmodul (202) zur wahlfreien Zuordnung der parametrisierten Ansteuersignale (116) bzw. ihrer Ableitungen für die Bewegungsdaten (310), Oberflächendaten (312) und/oder Klangdaten (314).
13. System zur frei spezifizierbaren Echtzeit-Steuerung für animierte Grafiken, Video- und/oder Audiosequenzen, aufweisend weiterhin aufweisend ein Freispezifizierungsmodul (202) zur frei spezifizierbaren Zuordnung von parametrisierten Ansteuersignalen (116) jeweils eines Freiheitsgrads zu einem bestimmten Bewegungsmuster (106), Oberflächenmuster (108), Klangmuster (110) und/oder Beleuchtungsmuster (112).
- einen Speicher, in dem für die Erzeugung von Bewegungsdaten (310), Oberflächendaten (312), Klangdaten (314) und/oder Beleuchtungsdaten (316) wenigstens ein vordefiniertes parametrisiertes Bewegungsmuster (106), Oberflächenmuster (108), Klangmuster (110) und/oder Beleuchtungsmuster (112) hinterlegt ist, sowie
- eine Recheneinheit zur Auswertung von parametrisierten Ansteuersignalen (116) verschiedener Freiheitsgrade von einem 3D-Eingabegerät (104) zur Erzeugung von Bewegungsdaten (310), Oberflächendaten (312), Klangdaten (314) und/oder Beleuchtungsdaten (316) mit Hilfe der hinterlegten Bewegungsmuster (106), Oberflächenmuster (108), Klangmuster (110) und/oder Beleuchtungsmuster (112),
14. System nach Anspruch 13, dadurch gekennzeichnet, dass das Freispezifizierungsmodul (202) weiterhin die Zuordnung von zeitlichen Ableitungen der parametrisierten Ansteuersignale (116) zu einem bestimmten Bewegungsmuster (106), Oberflächenmuster (108), Klangmuster (110) und/oder Beleuchtungsmuster (112) ermöglicht.
15. System nach Anspruch 13 oder 14, dadurch gekennzeichnet, dass das Freispezifizierungsmodul (202) eine frei spezifizierbare Einstellung von Kopplungsparametern der Zuordnung von parametrisierten Ansteuersignalen (116), wie zum Beispiel Dämpfung und Verstärkung, ermöglicht.
16. System zur Echtzeit-Steuerung von akustischen Parametern digitalisierter Klangmuster (410), aufweisend: wobei die digitalisierten Klangmuster (410) dadurch gekennzeichnet, dass einzelne oder mehrere akustische Parameter der digital gespeicherten Klangmuster (410) mittels durch ein Bewegen des 3D-Eingabegeräts (104) in Echtzeit erzeugt bzw. beeinflusst werden können.
- einen Computer, dessen Steuereinheit (401) mit mindestens einem elektronischen Musikinstrument (402) über eine MIDI- Schnittstelle (404a + b) leitend verbunden ist und
- ein 3D-Eingabegerät (104) zur Eingabe von parametrisierten Ansteuersignalen (116)
- im Speicher mindestens eines elektronischen Musikinstruments (402) digital gespeichert sind und
- auf mindestens einem elektronischen Musikinstrument (402) generiert und abgespielt werden können,
17. System nach Anspruch 16, dadurch gekennzeichnet, dass zur Erzeugung bzw. Beeinflussung einzelner oder mehrerer akustischer Parameter der digital gespeicherten Klangmuster (410) Steuerelemente, Tasten, Schalter, Drehknöpfe und/oder Schieberegler eines virtuellen Mischpults vorgesehen sind.
18. System nach Anspruch 17, dadurch gekennzeichnet, dass es sich bei den gesteuerten akustischen Parametern eines bestimmten digitalisierten Klangmusters (410) um Tonhöhen, Noten- bzw. Pausenwerte, Lautstärken, Tempi, Artikulationsanweisungen, Klangfarben, Pedal-, Vibrato-, Chorus-, Hall-, Oberton- und/oder andere Spezialeffekte handelt.
19. System nach einem der Ansprüche 16 bis 18, dadurch gekennzeichnet, dass zeitliche Ableitungen der parametrisierten Ansteuersignale (116) ermittelt und verarbeitet werden können.
20. System nach einem der Ansprüche 16 bis 19, dadurch gekennzeichnet, dass die Zuordnung von parametrisierten Ansteuersignalen (116) jeweils eines Freiheitsgrads zu einem oder mehreren Parametern eines bestimmten digitalisierten Klangmusters (410) frei spezifizierbar ist.
21. System zur Echtzeit-Steuerung von akustischen Parametern digitalisierter Klangmuster (512), aufweisend: wobei die digitalisierten Klangmuster (512) dadurch gekennzeichnet, dass einzelne oder mehrere akustische Parameter der digital gespeicherten Klangmuster (512) durch ein Bewegen des 3D- Eingabegeräts (104) in Echtzeit erzeugt bzw. beeinflusst werden können.
- einen Computer, dessen Steuereinheit (501) mit mindestens einer Sound-Karte (510) sowie mit mindestens einem Tongenerator (502) verbunden ist und
- ein 3D-Eingabegerät (104) zur Eingabe von parametrisierten Ansteuersignalen (116) für die Echtzeit-Bewegungssteuerung von Objekten,
- im Speicher mindestens einer Sound-Karte (510) des Computers digital gespeichert sind und
- auf mindestens einem Tongenerator (502) desselben Computers generiert und abgespielt werden können,
22. System nach Anspruch 21, dadurch gekennzeichnet, dass weiterhin zeitliche Ableitungen der parametrisierten Ansteuersignale (116) einem oder mehreren Parametern eines bestimmten digitalisierten Klangmusters (512) zugeordnet werden können.
23. System nach einem der Ansprüche 21 oder 22, dadurch gekennzeichnet, dass Kopplungsparameter der Zuordnung von parametrisierten Ansteuersignalen (116) frei spezifizierbar sind.
24. System zur Echtzeit-Steuerung von akustischen Parametern digital aufgezeichneter Klangmuster (410 bzw. 512), die wobei die Steuereinheit (401 bzw. 501) des Computers dadurch gekennzeichnet, dass einzelne oder mehrere akustische Parameter der digital gespeicherten Klangmuster (410 bzw. 512) mittels Steuerung der virtuellen Objekte durch ein Bewegen des 3D-Eingabegeräts (104) in Echtzeit erzeugbar bzw. änderbarsind.
- im Speicher mindestens einer Sound-Karte (510) eines Computers und/oder mindestens eines elektronischen Musikinstruments (402) nach dem MIDI-Standard digital gespeichert sind und
- mit mindestens einer Sound-Karte (510) und mindestens einem Tongenerator (502) bzw. mit mindestens einem elektronischen Musikinstrument (402) über eine MIDI-Schnittstelle (404a + b bzw. 504a + b) leitend verbunden ist und
- mit einem 3D-Eingabegerät (104) zur Eingabe von parametrisierten Ansteuersignalen (116) zur Echtzeit-Bewegungssteuerung virtueller Objekte leitend verbunden ist,
25. System nach Anspruch 24, dadurch gekennzeichnet, dass es sich bei den virtuellen Objekten, die zur Erzeugung bzw. Beeinflussung einzelner oder mehrerer akustischer Parameter der digital gespeicherten Klangmuster (410 bzw. 512) bewegt werden, um die Steuerelemente, Tasten, Schalter, Drehknöpfe und/oder Schieberegler eines virtuellen Mischpults handelt.
26. System nach einem der Ansprüche 24 oder 25, dadurch gekennzeichnet, dass es sich bei den gesteuerten akustischen Parametern eines bestimmten digitalisierten Klangmusters (410 bzw. 512) um Tonhöhen, Noten- bzw. Pausenwerte, Lautstärken, Tempi, Artikulationsanweisungen, Klangfarben, Pedal-, Vibrato-, Chorus-, Hall-, Oberton- und/oder andere Spezialeffekte handelt.
27. System nach einem der Ansprüche 24 bis 26, dadurch gekennzeichnet, dass Kopplungsparameter der Zuordnung von parametrisierten Ansteuersignalen (116) frei spezifizierbar sind.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE20121798U DE20121798U1 (de) | 2000-09-13 | 2001-08-13 | System zur frei spezifizierbaren Echtzeit-Steuerung |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE10045117A DE10045117C2 (de) | 2000-09-13 | 2000-09-13 | Verfahren und Vorrichtung zur Echtzeit-Geometriesteuerung |
| DE20121798U DE20121798U1 (de) | 2000-09-13 | 2001-08-13 | System zur frei spezifizierbaren Echtzeit-Steuerung |
| EP01980243A EP1319207A2 (de) | 2000-09-13 | 2001-08-13 | Frei spezifizierbare echtzeit-steuerung |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE20121798U1 true DE20121798U1 (de) | 2003-08-28 |
Family
ID=27806037
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE20121798U Expired - Lifetime DE20121798U1 (de) | 2000-09-13 | 2001-08-13 | System zur frei spezifizierbaren Echtzeit-Steuerung |
Country Status (1)
| Country | Link |
|---|---|
| DE (1) | DE20121798U1 (de) |
-
2001
- 2001-08-13 DE DE20121798U patent/DE20121798U1/de not_active Expired - Lifetime
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP1319207A2 (de) | Frei spezifizierbare echtzeit-steuerung | |
| US5952599A (en) | Interactive music generation system making use of global feature control by non-musicians | |
| Serafin et al. | Virtual reality musical instruments: State of the art, design principles, and future directions | |
| Hunt et al. | The importance of parameter mapping in electronic instrument design | |
| DE10129326B4 (de) | Informationsverarbeitungssystem mit einem grafischen Benutzerinterface steuerbar durch eine Spracherkennungsvorrichtung und damit ausgerüstetes Musikinstrument | |
| DE69818210T2 (de) | Vorrichtung und Verfahren zur Erzeugung von Ton und Bild auf Basis von einer Aufführungsdatei. | |
| DE10004372B4 (de) | Gestaltung von Kraftempfindungen für Computeranwendungen mit Geräuschen | |
| Schneider et al. | Studying design process and example use with Macaron, a web-based vibrotactile effect editor | |
| Mulder | Virtual musical instruments: Accessing the sound synthesis universe as a performer | |
| Iazzetta | Meaning in musical gesture | |
| Fels | Intimacy and embodiment: implications for art and technology | |
| US20110191674A1 (en) | Virtual musical interface in a haptic virtual environment | |
| Ciciliani | Virtual 3D environments as composition and performance spaces | |
| John et al. | AdapTics: A Toolkit for Creative Design and Integration of Real-Time Adaptive Mid-Air Ultrasound Tactons | |
| Magnusson | Affordances and constraints in screen-based musical instruments | |
| Willemsen et al. | Resurrecting the tromba marina: A bowed virtual reality instrument using haptic feedback and accurate physical modelling | |
| DE20121798U1 (de) | System zur frei spezifizierbaren Echtzeit-Steuerung | |
| Goto | Virtual musical instruments: Technological aspects and interactive performance issues | |
| JP3978506B2 (ja) | 楽音生成方法 | |
| Vertegaal | An Evaluation of input devices for timbre space navigation | |
| Waisvisz | Riding the sphinx—lines about ‘live’ | |
| CN111862911A (zh) | 歌曲即时生成方法和歌曲即时生成装置 | |
| Franco et al. | Issues for Designing a flexible expressive audiovisual system for real-time performance & composition | |
| Naseck et al. | Physical Manifestation of Generative AI Music Systems for Live Performance | |
| Sheridan | Musings on music making and listening: supervisory control and virtual reality |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| R207 | Utility model specification |
Effective date: 20031002 |
|
| R150 | Utility model maintained after payment of first maintenance fee after three years |
Effective date: 20041223 |
|
| R151 | Utility model maintained after payment of second maintenance fee after six years |
Effective date: 20071128 |
|
| R158 | Lapse of ip right after 8 years |
Effective date: 20100302 |