EP1319207A2 - Freely specifiable real-time control - Google Patents

Freely specifiable real-time control

Info

Publication number
EP1319207A2
EP1319207A2 EP01980243A EP01980243A EP1319207A2 EP 1319207 A2 EP1319207 A2 EP 1319207A2 EP 01980243 A EP01980243 A EP 01980243A EP 01980243 A EP01980243 A EP 01980243A EP 1319207 A2 EP1319207 A2 EP 1319207A2
Authority
EP
European Patent Office
Prior art keywords
parameterized
sound
pattern
control signals
real
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.)
Withdrawn
Application number
EP01980243A
Other languages
German (de)
French (fr)
Inventor
Bernd Von Prittwitz
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
3DConnexion GmbH
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to DE20121798U priority Critical patent/DE20121798U1/en
Publication of EP1319207A2 publication Critical patent/EP1319207A2/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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/00Details of electrophonic musical instruments
    • G10H1/0008Associated control or indicating means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/091Graphical 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/096Graphical 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/155User input interfaces for electrophonic musical instruments
    • G10H2220/315User 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/155User input interfaces for electrophonic musical instruments
    • G10H2220/321Garment 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/155User input interfaces for electrophonic musical instruments
    • G10H2220/4013D sensing, i.e. three-dimensional (x, y, z) position or movement sensing.

Definitions

  • the invention relates to a method for graphic visualization and real-time control of virtual and / or real objects for generating and / or influencing image or sound sequences, with the aid of which objects or real objects, such as robots or the like, are shown on a screen can be manipulated or controlled in a comfortable and reliable manner (quasi) in real time by interactive control commands of a user in their properties and / or actions.
  • the present invention relates to a method for animation and motion control of a three-dimensional (real or virtual) joint object in real time, to a method for freely specifiable control of animated graphics, video or audio data with the aid of optical or acoustic parameters, on a computer software product for performing such a method and on a system for real-time motion control of virtual and / or real objects.
  • objects in the sense of the invention can be virtual objects, but also real objects such as robots or other remote-controlled objects with several degrees of freedom.
  • the tactile channel (sense of touch) through haptic signals.
  • Signals can be entered into an information system via these channels in order to trigger a desired action by the system.
  • An ideal medium for communication between a user and an information system should be tailored to the sensory and perceptual as well as the motor skills as well as to the specific properties of the human user.
  • the information should be structured in such a way that an optimal match between the representation of the information output and the mental model of the user is achieved: If the information to be displayed to the user is presented in such a way that, for example, his spatial perception is addressed users deal with incredibly complex amounts of information per unit of time.
  • the information system should be able to record, understand and process as many types of information sent by a user as possible and convert them into corresponding actions. This has the advantage that the user can react more efficiently and quickly to new events and situations. Ease of use and appropriateness of the task are therefore typical features of such an ideal communication medium. These characteristics can be expressed as follows:
  • VR virtual reality
  • the aim of developing suitable interfaces between man and machine is to start from the properties of human communication channels and skills in order to provide devices, interaction techniques and interfaces that guarantee effective mutual communication via these channels.
  • so-called “virtual realities” (VR) are particularly suitable.
  • the term "virtual reality” (VR) is the computer-based generation of an intuitively perceptible or communicatendbaren scene consisting of its ⁇ f rafischen presentation and interaction for the user.
  • a virtual environment enables a user to access information that would otherwise not be available at the given place or time. It relies on natural aspects of human perception by using visual information in three spatial dimensions. This information can, for example, be changed in a targeted manner or enriched with further sensory stimuli. Control is essential the perspective in real time and the possibility of active
  • the user of the system influences the scene shown.
  • the user can use the control mode that is natural for him. These can be, for example, corresponding arm or leg movements, movements for positioning the head or eyes, rotational movements of the body or bell directed at an object.
  • the cognitive load during the interaction between man and machine can be reduced. This can increase the bandwidth of communication between man and machine and improve the operability of the machine.
  • the conventional forms of human-machine communication control the machine in a command-oriented manner, no specific commands have to be learned and used again when controlling objects in virtual environments: the computer "passively" observes the user and reacts in an appropriate manner based on the user's eye, head and / or hand movements under real-time conditions.
  • a reflex-like or cognitive sensory-motor feedback is particularly important, such as that of receptors in the skin, kinesthetic sensations, the sense of balance, as well as visual and / or acoustic sensations comes. In many cases this results in a necessary one
  • the visual perception not only provides information about the position, movement, shape, structure, contour, texture, color or pattern of objects etc., but also information about the relative body position of the viewer and his Movements and the nature of the three-dimensional environment. Synthetically generated environments can be made more realistic by simulating as much of the information as possible in natural environments (movement parallax, vanishing points of perspective, spatial depth and plasticity, lighting and shadows, concealment, gloss, mirroring and diffuse reflection, etc.) , How much and which information should be presented depends on the task at hand. The differences between the real and virtual world determine how realistic the simulation is perceived.
  • the visual information must be simulated by a computer in order to implement virtual realities. Similar aspects are relevant as in painting.
  • the computer-aided simulation of three-dimensional worlds usually simulates the projection of individual light beams. ' The starting point of such a simulation is the specification of the environment to be simulated. To do this, the individual objects with their properties and their location must be defined. The intensities of individual pixels are then calculated for visualization and projected onto the output medium.
  • VR systems basically consist of sensors and actuators and their coupling.
  • Important hardware components include the following: - "Displays" for the presentation of the virtual environment: As part of the visual presentation, today mainly monitors, "Head Mounted Displays” (HMD), "Binocular Omni-Oriented Monitors” (BOOM) and projection systems; However, auditory or tactile displays are also used, which react to acoustic or manual user input.
  • HMD Head Mounted Displays
  • BOOM Bocular Omni-Oriented Monitors
  • auditory or tactile displays are also used, which react to acoustic or manual user input.
  • Positioning and orientation systems for recording the location and perspective of the user:
  • Electromagnetic, kinematic, acoustic, optical and image processing procedures are used. .
  • VCS Vehicle-to-vehicle
  • Tracking head movements is an important part of VR applications. Usually the position and orientation of the head in the room are determined, advanced systems can also follow the direction of the gaze. Most systems use either ultrasound, magnetic or light energy to communicate between the head-mounted transmitters and the receivers. Important technical data that play a role in the selection of these systems are:
  • VR applications can be successfully used in practice in a number of different areas. Some possible applications are outlined below as examples.
  • the technologies available today for entering information into a data processing system can be divided into four groups according to the sensors used: 1. mechanical input systems (eg keyboards, mice, trackballs and joysticks), 2. electrical input systems (eg tactile displays and graphics tablets), 3. optical input systems (eg light pen) and
  • Acoustic input systems e.g. voice input and interpretation systems.
  • Low-resolution touchscreens have 10 to 50 positions in the horizontal and vertical directions and use a horizontal and vertical row of infrared LEDs and photo sensors to build up a grid of invisible light rays right in front of the screen.
  • the current finger position can be determined from this information.
  • Another known embodiment of touch-sensitive information input devices is the capacitively coupled touch panel. This provides a resolution of approximately 100 positions in each direction. If a user touches the conductive coated glass plate of the touchscreen with a finger, the current finger position can be determined based on the change in impedance.
  • High-resolution panels use two minimally spaced, transparent layers. One is coated with a conductive material, the other with a resistance material. These two layers touch through the pressure of the finger, and the current finger position can then be determined by measuring the resulting voltage drop.
  • a lower-resolution and cheaper variant of this technology uses a grid of fine wires instead of these layers.
  • Input devices which have manually operated force-torque sensors are known, for example, from the patent documents DE 36 11 336 C2, DE 37 64 287 and EP 0 979 990 A2. From the last-mentioned patent specification, it is also known to use such a force-torque sensor for controlling a real or virtual mixing or control desk, for example in order to create and design novel color, light and / or sound compositions.
  • the intuitive spatial control in three translational and three rotational degrees of freedom can be advantageously transferred to a continuous spatial mixing or control of a large number of optical and / or acoustic parameters.
  • Such a three-dimensional control device for electronic musical instruments is provided, for example, by the D-beam controller integrated in the keyboards EM-30 and EM-50 from Roland.
  • the D-beam controller integrated in the keyboards EM-30 and EM-50 from Roland.
  • the hand and / or body movements of a user can be detected without contact above a surface coated with infrared sensor elements.
  • the D-Beam technology these acoustic movements of the user's hand and / or body can be used to modify or control individual acoustic parameters of recorded improvisations or compositions in real time.
  • the D-Beam controller converts the user's movements into MIDI signals and analog control signals.
  • one of the preferred exemplary embodiments of the present invention is also based on a control device for controlling stored parameterized audio data with the aid of parameterized control signals which can be controlled using controllable virtual objects via a MIDI interface. be transferred to at least one electronic musical instrument, the aspects of the MIDI standard that are important for understanding the invention are briefly described below.
  • the MIDI interface is a digital data transmission format between electronic musical instruments, computers and peripheral devices.
  • the MIDI standard is widely used today and has been used by many musicians and composers since its introduction in 1983.
  • MIDI opens up a very efficient method of displaying audio data, and this makes MIDI a very attractive data transfer protocol not only for composers or artists, but also for a variety of computer applications that are able to generate sound patterns , such as multimedia applications or computer games. Thanks to the publications of the General MIDI System Specification, the most common PC / MIDI interfaces are widely recognized by users today. MIDI is also supported by the Microsoft Windows operating system and other operating systems. Due to the development and marketing of inexpensive synthesizers, the MIDI standard is becoming increasingly popular as the number of applications increases.
  • MIDI was originally developed to be able to couple two or more keyboards from different manufacturers. At the time, no one foresaw that complete music productions could be created using sequencer systems using the MIDI data format.
  • MIDI is mainly used as a transmission medium to replace or supplement digitized audio data in computer games or multimedia applications.
  • MIDI was standardized by the MIDI Manufacturers Association (MMA), which includes all manufacturers of digital musical instruments worldwide. This committee defines the norm binding for all members, among other things also the command structure of the MIDI protocol defined in the MIDI standard. Without this standard, incompatibilities among devices from different manufacturers would result.
  • MMA MIDI Manufacturers Association
  • MIDI events In contrast to the transmission of analog audio data, when transmitting sound patterns via MIDI interface from one or more keyboards to a computer (or in the opposite direction), only bit sequences (so-called "MIDI events") are transmitted, which contain the significant acoustic parameters of the pieces of music played or to be played on the individual keyboards in electronically readable
  • These programming instructions include MIDI-Se- quences, for example, instruct the synthesizer, which tracks are to be recorded, which solo or loading ⁇ f leitinstrumente to be used for an arrangement and which musical parameters are transmitted.
  • Acoustic parameters are understood to mean, for example, pitches, note or pause values, volumes, tempos, articulation instructions, timbres, pedal, vibrato, chorus, reverb, overtone and / or other special effects. In the following, these acoustic parameters will be referred to as "MIDI game information".
  • the playback of the audio data on a keyboard is therefore not an analog recording of pieces of music previously recorded on a keyboard, but the exact reproduction of the recording process itself.
  • the polyphonic voices of a playback synthesizer are at least partially occupied.
  • MIDI files are extremely small, for example files in which high-quality sampled audio data are stored in stereo quality contain approximately 10 Mbytes of music played per minute, while a typical MIDI sequence has a size of less than 10 kBytes per Minute of music is played back, because MIDI files - as already mentioned - do not contain the sampled audio data, but only the programming commands required by a synthesizer to generate the desired sound.
  • MIDI game information does not convey any immediate information about the type of audio data represented, individual acoustic parameters of this MIDI game information can subsequently be exchanged as desired. This also has great advantages:
  • a composer can subsequently instrument or rearrange his work in a variable manner.
  • synthesizers can, for example, play the same voice (unison) to achieve more sonority and much more
  • a complete MIDI word usually consists of three bytes.
  • the so-called status byte is sent first. It is a notification of what type of message it is.
  • the status byte is followed by two data bytes, which contain information about the respective content of the message.
  • the following example refers to the MIDI representation for "switching on” a tone of medium pitch (c 1 ), which should sound at a medium volume (Italian: “Mezzoforte", mf):
  • the first bit (Most Significant Bit", MSB) in the binary representation of the status byte is always assigned the value "1", with data bytes the MSB always has the value "0". In this way, status and data bytes can be clearly differentiated.
  • Z s for a status byte the following applies as a result of the "1" in the MSB: Z s e [128 ⁇ 0 ; 255 10 ]. Since the MSB is set to "0" for the data bytes, which means that it can no longer be used as a value indicator, the data Bytes only seven bits each, so that consequently for the
  • the MIDI channel of the transmitter must be identical to that of the respective receiver.
  • the basic principle here is that a MIDI data line transports all game information on all 16 MIDI channels, whereby the connected tone generators select the messages that are intended for them.
  • the address A k of a selected MIDI channel k (where ke ⁇ 0 10 , ..., 15 ⁇ 0 ⁇ or A k e ⁇ 0000 2 , ..., 1111 2 ⁇ ) transferred. This means that only the first four bits of the status byte contain the status information of a MIDI sequence (eg "Note On", "Note Off” etc.).
  • the MIDI data format provides for the smallest possible interval between different pitches of equal-tempered halftone steps or "chromas” (ie enharmonially equivalent intervals such as excessive primes, small seconds or double-reduced thirds).
  • chromas ie enharmonially equivalent intervals such as excessive primes, small seconds or double-reduced thirds.
  • pitch bend wheel data is required to be generated with a respective control instrument of the synthesizer (the "pitch bend wheel”) can. It is usually a wheel or (more rarely) a joystick that can be moved in four directions.
  • the pitches of the Keys that are depressed on the keyboard of the synthesizer are detuned by rotating the pitch bend wheel in the direction of higher or lower frequencies.
  • detunings of up to an equal-tempered whole tone can be generated in the direction of higher or lower frequencies.
  • the pitch bend wheel is usually equipped with a return mechanism that springs back to the middle or normal position when the wheel is released. This position corresponds to the pitches of the depressed keys on the basis of the floating mood.
  • the tones of the keys struck on the keyboard of the synthesizer can optionally be provided with a vibrato effect.
  • this control instrument can also be used to achieve other effects, for example to mofify the sound brightness or the resonance of the played tones by changing their overtone spectrum. If the modulation wheel is turned to a first point of impact, the depth of the effect is minimal; if it is turned up to an opposite second anchor point, the effect depth is maximum.
  • the second data byte is responsible for the control area. For example, with the help of Frequency modulations responsible controller No. 1 from
  • a vibrato or tremolo effect can be added to synthesizers.
  • the following table lists the most common controllers with their numbers (addresses) and designations:
  • Addresses 12 to 31 are not assigned and offer the user the possibility of freely assigning MIDI functions. Depending on the nature of the respective synthesizer, these addresses can sometimes be assigned very unusual physical parameters, such as the oscillator frequency or pulse width of the generated vibrations.
  • controllers 32 to 38 serve to more finely resolve the range of values of the controller addresses 1 to 6. The same is done by controller numbers 39 to 63 for addresses 7 to 31.
  • the game aids described so far are characterized by a common property: they can be (in 128 or more Step by step).
  • Controller is "Continuous Controller". In contrast, there are other controllers that perform switch functions and are therefore generally called “switch controllers”. The following table gives an overview of the most important of these controllers:
  • the MIDI data format allows a more differentiated interpretation of the value range 1 10 to 126 ⁇ 0 .
  • a multi-stage sustain effect can also be provided.
  • the decay phase of sound events with a "half" pedal depressed is reduced accordingly compared to the decay phase of sound events of the same pitch and volume with the pedal depressed to the stop.
  • the controller addresses for example for the modulation wheel, the holding pedal or sills that can be operated with the foot to influence the dynamics, are already defined. If one of these game aids is used, the sent controller address is fixed.
  • modern synthesizers and master keyboards also have freely definable controllers, ie any controller number can be assigned to the intended play aids (pedals, sills, wheels and sliders).
  • Some tone generators in turn allow the controller functions to be redefined in the device itself. The controller number received can be freely assigned to an internal function.
  • FM synthesis frequency modulation
  • WAV synthesis wavetables
  • FM synthesis is a process used by sound cards and computers to mimic the tones of acoustic musical instruments by electronic means. Sounds generated with the help of FM synthesis are easily recognizable as such - in contrast to sound patterns that were generated by WAV synthesis with the help of wavetables. Master keyboards and synthesizers that have wavetables are relatively expensive, but are often preferred by many professional and amateur musicians because of their high quality playback. The sound patterns are generated by wavetables that combine and / or reproduce stored, digitally sampled original sounds ("Samples”) of acoustic musical instruments. Compared to FM synthesis, in which electronic sounds are generated with the help of the computer, wavetable sounds appear much more realistic.
  • Sound cards are essential for any application that uses sound effects.
  • sound cards In order to be able to translate analog audio data into digital computer language, sound cards have appropriate devices for digitizing analog sounds.
  • the sound generation by a sound card is based on either an FM synthesis or a WAV synthesis.
  • the present invention dedicated to ? the task of providing comfortable and reliably working methods by means of which the user is able to actively control virtual and / or real objects, the existing skills of the user being used to transmit information.
  • the movement control of objects in real time or the real time control of electronically generated audio signals is to be simplified.
  • the invention proposes an efficient method for graphic visualization and real-time control of virtual or real objects for generating and / or influencing image or sound sequences
  • Objects or real objects displayed on a screen can be manipulated, controlled or influenced in real time in a comfortable and reliable manner by interactive control commands of a user in their properties and / or actions.
  • the present invention includes a method for animation and motion control of a joint object in (quasi) real time, a method for freely specifiable control of optical or acoustic parameters, a computer software product for executing such a method and a system for real-time Motion control of virtual or real objects.
  • the present invention relates in particular to input devices which can generate control signals for various degrees of freedom that are independent of one another, and this in each case by means of analog signals.
  • Each of these analog signals can thus be used as a parameter value when controlling virtual objects.
  • the technologies used to input the control commands issued by the user are devices for recording , Recognition, interpretation and processing of three-dimensional movements of a user. The user is therefore no longer dependent on the presence of additional hardware devices for the manual input of control commands.
  • the inputted information can be evaluated instead or additionally using methods of signal or pattern recognition.
  • the type of input method can be tailored to the individual skills of the user.
  • One aspect of the present invention is that reference patterns for animation and motion control of objects, for designing the shape, color and structure of the surfaces of virtual objects and for generating and / or influencing image or sound sequences are stored in advance.
  • these reference patterns can then be called up in real time as parameter values for the generation and / or influencing of animation effects, for the surface design of the objects, for the control or targeted manipulation of video or audio data.
  • the respective reference patterns can be stored in a standardized manner, so that, based on such a real-time control, the above-mentioned parameter values are changed by a module-like exchange of the respective reference patterns at a corresponding interface of the
  • Real-time control can be done with relatively little effort.
  • a preferred exemplary embodiment of the underlying invention is based on a method for real-time motion control of a joint object. First, at least one parameterized movement pattern is defined for at least one surface pattern for the object. If control signals are then fed into the real time motion control entered, this calculates skeletal motion
  • Change data i.e. the position changes of the contours of a virtual object or a framework, consisting of the hinge points of a virtual object connected by edges
  • the skeleton change data reflect translatio and / or rotatochange changes in the position or orientation of the joints of the object.
  • the surface of the virtual joint object is calculated on the basis of the skeleton change data and at least one surface pattern.
  • control signals for at least six independent degrees of freedom can be input simultaneously and processed in real time. These are, for example, control signals for three translatio and three rotatio degrees of freedom in a virtual three-dimensional vector space.
  • the first and second time derivatives of the control signals can be determined according to the invention and processed.
  • the controller thus determines the change in the control signals over time, so that, in contrast to the already mentioned US Pat. No. 5,757,360, for example, no separate acceleration sensor is required.
  • the acceleration can rather be determined by evaluating the development of the control signals with the help of the motion control itself.
  • the assignment of the control signals or their time derivatives as parameter values for the stored movement patterns can be freely specifiable.
  • audio data can also be specifically influenced in real time with the aid of parameterized control signals from the user.
  • Digitally stored, parameterized sound patterns such as the acoustic parameters of (according to the so-called MIDI standard) digitally recorded pieces of music, which can be controlled via the parameterized control signals of the user, can be specifically modified. These sound patterns can then be called up as parameter values in real time, depending on the respective control signals of the user.
  • a method for freely specifiable control of animated graphics, video and / or audio data using optical or acoustic parameters is provided.
  • Generation and / or influencing of these image or sound sequences is at least one predefined parameterized movement, surface, sound and / or lighting pattern stored as a reference pattern.
  • control signals of different degrees of freedom are evaluated by an input device and used as parameter values for generating or influencing animated graphics, video and / or audio data with the aid of at least one stored reference pattern.
  • the assignment of the control signals of a degree of freedom to a specific reference pattern can be freely specified by the user.
  • temporal derivations of the control signals can optionally be assigned to a specific reference pattern.
  • the coupling parameters of the assignment such as the damping and the amplification, can also be freely adjustable by the user.
  • a computer software product is provided, with the aid of which a method according to one of the exemplary embodiments described above can be carried out.
  • a system may be provided for real-time motion control objects that has a memory in which are stored in the at least one parameterizedtheresmu ⁇ edge and at least a surface pattern of the object.
  • This system can also have an input device for inputting control signals for real-time motion control. tion.
  • a motion generator can be provided in order to calculate skeleton change data on the basis of the control signals as parameter values and at least one parameterized motion pattern.
  • the skeleton change data reflect translational and / or rotational changes in the position or orientation of the joints of the object.
  • a surface generator can be provided which calculates the surface of virtual joint objects on the basis of their skeleton change data and a selected surface pattern.
  • the input device can be designed for the simultaneous input of control signals for at least six independent degrees of freedom. It can be designed in particular for the input of control signals for three translational and three rotary degrees of freedom in a three-dimensional vector space.
  • a unit for determining and processing the time derivatives of these control signals can also be provided.
  • a sound generator can also be provided for generating sound signals by linking digitally parameterized sound patterns with digital control signals that are present in parameterized form.
  • a unit for the optional assignment of the control signals or their derivatives can also be provided as parameter values for the parameterized movement, surface, sound and / or lighting patterns.
  • a system for freely specifiable real-time control of animated graphics, video and / or audio sequences has a memory in which at least one predefined parameterized movement, surface, plan and / or lighting pattern is stored as a reference pattern in order to generate and / or influence animated graphics, video and / or audio sequences in real time.
  • the system also has an arithmetic unit for evaluating control signals of different degrees of freedom from an input device as parameter values for generating and / or influencing animated graphics, video and / or audio sequences using at least one stored reference pattern.
  • an adjustment unit is also provided in order to enable a freely selectable assignment of control signals of one degree of freedom to a specific reference pattern.
  • This setting unit can optionally allow time derivatives of the control signals to be assigned to a specific reference pattern. Furthermore, it can achieve a freely selectable setting of coupling parameters of the assignment, such as, for example, the temporal damping and the amplification.
  • FIG. 1 shows a simplified block diagram to illustrate the input and output signals of the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences according to the preferred embodiment.
  • Example of the underlying invention
  • FIG. 2 shows a detailed block diagram to illustrate the components and the input and output signals of the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences,
  • FIG. 3 shows a flowchart to illustrate the actions performed by the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences
  • FIG. 4 shows a block diagram to illustrate the control of individual or several acoustic parameters of digitized sound patterns by a system, consisting of a computer, the control unit 401 of which is conductively connected to at least one electronic musical instrument 402 via a MIDI interface and a 3D input device 104 for the input of parameterized ones Control signals for real-time motion control of virtual objects that can be displayed on a screen
  • FIG. 5 shows a block diagram to illustrate the control of individual or several acoustic parameters of digitized sound patterns by a system, consisting of a computer which has an electronic tone generator 502 and a sound card 510, and a 3D input device 104 for input of parameterized control signals for the Real-time motion control of virtual objects that can be displayed on a screen.
  • the human-machine interface is represented by the input device 104.
  • this is a so-called 3D input device, which can generate control signals 116 for six degrees of freedom, which are independent of one another, if it is manipulated accordingly by a user.
  • degrees of freedom include, for example, three translational degrees of freedom, which are referred to below as x, y and z, and three rotational degrees of freedom, which are referred to below as ⁇ ⁇ , ⁇ y and ⁇ z .
  • the variables x, y and z denote the orthogonal axes of a three-dimensional Cartesian coordinate system.
  • the transformed location vector x ⁇ (x, ⁇ x), which results after the translation of a point object P with the location vector x by the path differences ⁇ x, ⁇ y and ⁇ z in the direction of the respective axes x, y and z, respectively, in this vector space V are simply expressed by adding the location vector x and a linear combination of the orthonormal unit vectors e x , e y and e z :
  • the variables ⁇ ⁇ , ⁇ y and ⁇ z denote the direction of rotation of virtual objects around the x, y and z axes of this coordinate system.
  • the transformed location vector x R (x, ⁇ ), which results after the rotation of a point object P with the location vector x by the angles of rotation ⁇ x , A ⁇ ⁇ and ⁇ z , can be expressed in this vector space V as follows:
  • the rotation matrices R x ( ⁇ x ), R y ( ⁇ y ) and R z ( ⁇ z ) are defined as follows:
  • the present invention may in accordance with the temporal change of these control signals 116 by the freely specifiable real-time control 102 for animated graphics, video and / or audio sequences, which is then described in more detail below. zen can be evaluated. In particular, it is therefore possible to use the three-dimensional vectors for at any discrete point in time n (after omitting the units)
  • the speed v (n): [x (n), y (n), z (n)] ⁇ e «s *» 3
  • the acceleration a (n): [x (n), y (n) , z (n)] ⁇ e ⁇ - *> 3
  • the angular velocity ⁇ (n): [ ⁇ x (n), ⁇ y (n), ⁇ z (n)] ⁇ e '
  • the input device 104 does not require any further sensors (for example speed or acceleration sensors).
  • control signals 116 are fed on the input side from the 3D input device 104 to the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences according to the present invention, the latter outputs animation output signals 120 depending on these control signals 116 With the help of which a 3D animation 114 can be generated, for example, on the screen of a computer.
  • This 3D animation 114 may include:
  • controllable movement patterns 106 of at least one movable joint body controllable surface patterns 108 of the joint body and / or its surroundings,
  • this SD animation 114 is carried out in real time with respect to the control signals 116. In contrast to some known examples according to the prior art, it is therefore normally not necessary to save sound or image sequences in advance in order to then trigger them at the push of a button.
  • a major advantage of the present invention is that for a newly to be generated 3D animation 114 does not have to be done a completely new programming, as is the case in the prior art '.. Rather stored motion patterns 106, surface pattern 108, Sound patterns 110 and / or lighting patterns 112 are connected in an interface-like manner to the freely specifiable real-time control 102 for animated graphics, video and / or audio sequences. By exchanging or re-specifying at least one of the named patterns, a completely new 3D animation 114 can be generated in a simple manner. The programming effort for creating a new 3D animation 114 is thus significantly reduced.
  • the brain can process extremely complex amounts of information per unit of time in various animal species and in humans in the course of evolution with regard to the spatial perception and processing of movement patterns, in a preferred exemplary embodiment of the underlying invention, these learned and inherited skills are easily accessed
  • known movement patterns are made available in a modular manner via a standardized interface of the freely specifiable real-time control 102 for animated graphics, video and / or audio sequences.
  • the 3D input device 104 represents only one example of an input device for generating control signals 116. In principle, any other type of input device is also suitable, although the 3D input device 104 has the great advantage that the input of control signals 116 of different degrees of freedom can take place in a particularly intuitive manner.
  • the specific embodiments of such 3D input devices 104 reference is made to the prior art cited in the introduction to the description. Such products are commercially available from LogiCad3d, for example.
  • the arrows 116 and 120 shaded in gray show the real-time input and output of signals from or to the freely definable real-time control 102, namely the control signals 116 (x, y, z, ⁇ ⁇ , ⁇ y and ⁇ z ) from the 3D input device 104 and the animation output data 120.
  • the control signals 116 are fed to a free specification module 202.
  • One function of the free specification module 202 is to use the absolute values of the entered “analog data” x, y, z, ⁇ x , ⁇ y and ⁇ z to derive the first time derivatives (velocities or angular velocities) or the second temporal derivatives ( Accelerations or angular accelerations) can be determined without the aid of an additional sensor (acceleration sensor), for example, the speed and the acceleration with respect to the “analog data” mentioned under the control signals 116.
  • a second important function of the free specification module 202 is to control the control signals 116 of the various degrees of freedom for the components for generating and / or influencing the graphics, image or sound sequences, ie the motion generator 204, the surface generator 206, the acoustic generator 208 or the Lighting generator 210 to assign.
  • a mask can be provided for the user during the initialization of the real-time control 102 according to the invention for animated graphics, video and / or audio sequences, which enables the user to access the free specification module 202 in such a way that the user has a degree of freedom
  • Control signals 116 can assign one of the above-mentioned components - for generating and / or influencing the graphics, image or sound sequences.
  • the user can freely set the coupling parameters for the assignment of control signals to stored reference patterns, such as, for example, to carry out spectral filtering for damping or amplifying the signal components of audio signals in predeterminable frequency ranges.
  • the adjustable coupling parameters determine the temporal coupling and the damping or amplification of the change in the corresponding reference pattern depending on the assigned control signal and thus the signal response behavior of the system.
  • the free specification module 202 has the effect that the coupling parameters of the assignment - such as the damping or amplification - are freely adjustable.
  • the coupling parameters are changed with regard to the movement pattern of a walking movement of the joint object, it is possible to switch continuously from a dynamic to a limping walking movement.
  • different moods or emotions can also be expressed as a result Facial expressions of a depicted face.
  • Movement patterns can be linked to mood patterns as follows:
  • the user can therefore continuously select between the walking movement of a young athlete and that of an old man and, coupled with this, easily select different characters and / or moods.
  • the free specification module 202 assigns the corresponding control signals 116 as follows:
  • a motion generator 204 as parameterized motion control signals 212
  • the motion generator 204 combines the motion control signals 212 assigned to it with at least one predefined parameterized motion pattern 106 for generating motion animation output signals 220.
  • different motion patterns of the virtual joint object eg walking in different directions, stooping or Jumping etc.
  • the surface generator 206 links the surface control signals 214 assigned to it, the motion animation output signals 220 generated by the motion generator 204, and data from at least one predetermined parameterized surface pattern 108 for generating surface outputs. signals 222.
  • a structural For example, a structural,
  • the acoustic generator 208 links the acoustic control signals 216 assigned to it with at least one parameterized, predefined sound pattern 110.
  • the product of this connection is the sound output signals 224, which represent part of the animation output signals 120.
  • the ge entered ⁇ th sound patterns may for example be parameterized digital audio files.
  • the illumination generator 210 linked to its assigned illumination control signals 218 with at least one pre-defined parameterized illumination pattern 112 to produce illumination output signals 226.
  • the illumination pattern 112 may in this case a virtual Whether ⁇ ject and / or affect its surroundings.
  • the predefined movement patterns 106, surface patterns 108, sound patterns 110 and lighting patterns 112 are each parameterized, so that the corresponding assigned control signals can be used as parameter values by the movement generator 204, the surface generator 206, the acoustic generator 208 or the lighting generator 210 , perform a real-time control of the corresponding pattern depending on the control signals 116 from ⁇ , said real-time control of the corresponding pattern in the corresponding change in the er Weg ⁇ th animation data 220, 222, 224 and 226 is reflected, the total of the animation - Output signals 120 can be summarized.
  • the user can by manipulating the
  • Input device 104 and the corresponding assignment by the free specification module 202 (which was set by the user himself or in advance by the manufacturer) in real time the movement patterns 106, the surface patterns (geometries, textures, etc.) 108, the sound patterns 110 and / or control the lighting pattern 112.
  • it can trigger predefined patterns, for which purpose a switch on the input device 104 can be used, for example.
  • it can use the "analog drive signals" x, y, z,
  • the movement generator 204 continuously calculates the new position and orientation of the joints of the joint body depending on the movement control signals 212.
  • a movement pattern 106 is thus defined, for example, as follows: First, skeletal data are defined that describe the type and position of the joints of the joint body. In addition to the position of the joints (position), the type of joints (which can be described by the type and number of degrees of freedom) is also defined. For each joint j of the J joints of a virtual joint object under consideration, the following string S ⁇ can be defined, for example:
  • a movement sequence then consists of a list or a function that determines which of the defined joints moves when and how, depending on the parameterized control signals.
  • a sequence of movements can thus consist, for example, of a list of the joints to be “processed.” For each cycle, the list or a function is used to calculate which new position and / or orientation of the joints results from the individual contributions of the various joints depending on the control signals.
  • the position of a joint defined by the coordinates x, y, z, and its orientation, defined by the angular coordinates ⁇ x ⁇ ⁇ y or ⁇ ⁇ , are calculated as follows:
  • This equation (1) is therefore calculated for each joint defined in the skeletal data.
  • the new position and orientation of a joint at time n is thus calculated from the position in the previous cycle n-1 plus the new contributions which are dependent on the control signals
  • the vector-valued function fj represents a representation, such as a certain movement, e.g. the course of a human being can be reproduced in a standardized manner.
  • Steps 301a, 301b and 301c relate to a setting and assignment priority in the free specification module 202. This process can either be defined by the user or else in advance. After starting in step 301 so the user and / or a programmer can by releasing specification module 202, the individual control signals 116 of the various degrees of freedom different patterns (movement patterns 106, Upper ⁇ surface pattern 108, sound patterns 110 and / or illumination patterns 112) to assign. In a step 301c, the coupling parameters between the control signals and the changes in the corresponding patterns that are actually carried out in real time can be set. These coupling parameters can relate, for example, to the attenuation and the amplification of sound patterns.
  • control signals are then forwarded from the SD input device 104 to the real-time controller 102 for animated graphics, video and / or audio sequences in a step 304.
  • the control signals are then evaluated in a step 306, the first and second time derivatives of the “analog control signals” being determined, for example.
  • the control signals of the different degrees of freedom are assigned to the movement patterns 106, surface patterns 108, already mentioned above.
  • a method or a system can be provided for controlling individual or several acoustic parameters of digitized sound patterns 410, which uses the following devices:
  • control unit 401 of which is conductively connected to at least one electronic musical instrument 402 via a MIDI interface 404a + b and
  • an input device 104 for input of parameterized control signals 116 for real-time motion control of virtual objects that can be displayed on a screen.
  • the digitized sound patterns 410 can be digitally stored in the memory of at least one electronic musical instrument 402 in accordance with the MIDI standard and generated or played back on at least one electronic musical instrument 402 in accordance with the MIDI standard. Individual or more of these acoustic parameters can be generated or influenced according to the invention by controlling the virtual objects by moving the input device 104 in real time.
  • control unit 501 of which is connected to at least one sound card 510 and to at least one tone generator 502, and
  • an input device 104 for input of parameterized control signals 116 for real-time motion control of virtual objects that can be displayed on a screen.
  • the digitized sound patterns 512 can be stored digitally in the memory of at least one sound card 510 of the computer and can be generated and played on at least one tone generator 502 of the same computer.
  • One or more acoustic parameters of the digitally stored sound patterns 512 can According to the invention by means of the virtual objects Steue ⁇ tion are generated by moving the input device 104 in real-time or influenced.
  • the controllable virtual objects, which are controlled to generate or influence individual or more acoustic parameters of the digitally stored sound patterns 410 or 512 by moving the input device 104, can be, for example, the control elements, buttons,
  • Act switches, knobs and / or sliders of a virtual mixer with the help of which, for example, individual frequency ranges of the overtone spectrum of a stored, digitized sound pattern 410 or 512 can be specifically attenuated or amplified.
  • the input device 104 can be, for example, a wireless control medium that can be moved in three dimensions (“3D mouse”) and which is capable of simultaneously parameterized control signals 116 of movements in at least six independent degrees of freedom to process in real time.
  • 3D mouse three dimensions
  • the controlled acoustic parameters of a specific digitized sound pattern 410 or 512 can be, for example, pitches, note or pause values, volumes, tempos, articulation instructions, timbres, pedal, vibrato, chorus, reverb, overtone and / or other special effects.
  • Parameterized control signals 116 of movements of the input device 104 can be entered in three translational and three rotational degrees of freedom.
  • time derivatives of the parameterized control signals 116 can also be determined and processed.
  • the assignment of parameterized control signals 116 of one degree of freedom to one or more parameters of a specific digitized sound pattern 410 or 512 can be freely specified according to the invention.
  • the time derivations can be assigned to one or more parameters of a specific digitized sound pattern 410 or 512 in accordance with the parameterized control signals 116.
  • the coupling parameters of the assignment of parameterized control signals il ⁇ can also be freely specified.
  • motion generator for calculating the skeleton change data of joint objects on the basis of the control signals 116 as parameter values and at least one parameterized movement pattern 106 each, the skeleton change data translational and / or rotational changes in the position or orientation of the Play joint objects
  • 301c parameter presetting e.g. damping or amplification
  • control unit 401 of which is conductively connected to at least one electronic musical instrument 402 via a MIDI interface and a 3D input device 104 for input of parameterized control signals for real-time motion control of virtual objects that can be displayed on a screen
  • 500 block diagram to illustrate the control of individual or several acoustic parameters of digitized sound patterns by a system, consisting of a computer which has an electronic tone generator 502 and a sound card 510, and a 3D input device 104 for input of parameterized control signals for real-time motion control of virtual objects that can be displayed on a screen
  • Control unit of the computer which has an electronic tone generator 502 and a sound card 510

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)
  • Processing Or Creating Images (AREA)
  • Electrophonic Musical Instruments (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Freely specifiable real-time control of animated graphics, video and/or audio sequences with the aid of controllable virtual objects. In order to control the movement of a virtual articular object in real-time, a model of a moving parameter (106), in addition to a surface model (108) defined for said object control signals (116) are inputted, using a 3D input device, in real-time. Additionally, the skeletal modified data is calculated on the basis of the parameterised control signals (116) and at least one parameterised moving model (106). The surface is calculated on the basis of the skeletal modified data and at least one surface model (108). Cyclic repetition of said steps enables a real-time movement control to be obtained.

Description

Frei spezifizierbare Echtzeit-SteuerungFreely specifiable real-time control
HINTERGRUND UND EINSATZBEREICH DER ERFINDUNGBACKGROUND AND FIELD OF APPLICATION OF THE INVENTION
Die Erfindung bezieht sich auf ein Verfahren 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 be- zieht sich die vorliegende Erfindung auf ein Verfahren zur Animation und Bewegungssteuerung eines dreidimensionalen (realen oder virtuellen) Gelenk-Objekts in Echtzeit, auf ein Verfahren zur frei spezifizierbaren Steuerung von animierten Grafiken, Video- bzw. Audiodaten mit Hilfe von optischen bzw. akustischen Parametern, auf ein Computersoftware-Produkt zur Ausführung eines solchen Verfahrens sowie auf ein System zur Echtzeit-Bewegungssteuerung von virtuellen und/oder realen Obj ekten.The invention relates to a method for graphic visualization and real-time control of virtual and / or real objects for generating and / or influencing image or sound sequences, with the aid of which objects or real objects, such as robots or the like, are shown on a screen can be manipulated or controlled in a comfortable and reliable manner (quasi) in real time by interactive control commands of a user in their properties and / or actions. In particular, the present invention relates to a method for animation and motion control of a three-dimensional (real or virtual) joint object in real time, to a method for freely specifiable control of animated graphics, video or audio data with the aid of optical or acoustic parameters, on a computer software product for performing such a method and on a system for real-time motion control of virtual and / or real objects.
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.It should be noted that “objects” in the sense of the invention can be virtual objects, but also real objects such as robots or other remote-controlled objects with several degrees of freedom.
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 menschlichen Anwender beruhen. Diese Fehlanpassung kann einerseits zu einer vom Anwender nicht mehr zu bewältigenden Informations- flut 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 Entscheidungs- findung, beim Problemlosen sowie bei der Planung und Ausführung von Handlungen, nur unzureichend berücksichtigt und un- terstützt, wenn es sich um die Auslegung technischer Systeme handelt .In the context of interactive communication between man and machine, problems often arise which are based on the insufficient adaptation of the machine to the properties of the recording, processing and output of information by the human user. On the one hand, this mismatch can result in information that the user can no longer handle. flood, especially when several tasks have to be done. On the other hand, if the user is under-challenged, for example in a highly automated system in which humans only have a control function, the monotony of the work situation leads to a drop in performance and incidents due to a lack of practice in such situations can no longer be controlled. The lack of consideration of the knowledge and level of training of the user of a machine should also be mentioned here. In many cases, human behavior, for example in the selection, evaluation and linking of information, in decision-making, in problem-free as well as in the planning and execution of actions, is still insufficiently taken into account and supported if it is is the design of technical systems.
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 manu- eilen 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ön- nen. 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 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 Verhaltensmus- ter, 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 .The systems currently used to display and control objects in virtual environments increasingly take into account the ability of humans to record and process information, but they have one major disadvantage: when entering control commands for directly influencing the displayed scene, this is Users still rely on conventional methods for manually entering information, such as using a mouse, trackball, joystick, graphics tablet with stylus or touchscreen. The input mechanisms required for this must first be learned by the user in order to be able to be carried out at an appropriate speed of reaction. On the other hand, the innate or already existing learned human skills for communication by means of acoustic signals (e.g. speech) or optical signals (e.g. facial expressions, gestures, gestures and movements) are only insufficiently taken into account when entering information for controlling objects. For the adaptation of technical systems to humans, prior knowledge about their properties, their behavior patterns, their skills and their level of knowledge is necessary. When exchanging information between a user and an information system, the sensory, cognitive and motor properties of humans are of particular interest.
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 Wesentlichen die folgenden Wahrnehmungskanäle angesprochen:On the side of the sensory properties of humans predefined by the sensory channels, conventional machines and devices for outputting information essentially address the following perception channels:
- der visuelle Kanal (Augen) durch optische Signale,- the visual channel (eyes) through optical signals,
- der auditive Kanal (Ohren) durch akustische Signale und- The auditory channel (ears) through acoustic signals and
- der taktile Kanal (Tastsinn) durch haptische Signale.- The tactile channel (sense of touch) through haptic signals.
Mach der Verarbeitung der Signale im Gehirn (Kognition) ste- hen auf der Seite der durch die Ausgabekanäle vorgegebenen motorischen Eigenschaften des Menschen im Wesentlichen folgende Kanäle zur Verfügung:Following the processing of the signals in the brain (cognition), the following channels are essentially available on the side of the motor properties of humans specified by the output channels:
- 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,- arm, hand and finger or leg and foot motor functions as well as body, head, eye or mouth movements, i.e. physical movements, gestures, gestures and facial expressions to generate mechanical or optical signals,
- die Sprachmotorik zur Erzeugung von akustischen Signalen.- Speech motor skills for the generation of acoustic signals.
Über diese Kanäle können Signale in ein Informationssystem eingegeben werden, um eine gewünschte Aktion des Systems auszulösen. 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 menschli- chen 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 dargebo- ten, 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 aufzuneh- men, 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 Aufga- benangemessenheit sind somit typische Merkmale, über die ein solches ideales Kommunikationsmedium verfügt. Diese Merkmale können sich wie folgt äußern:Signals can be entered into an information system via these channels in order to trigger a desired action by the system. An ideal medium for communication between a user and an information system should be tailored to the sensory and perceptual as well as the motor skills as well as to the specific properties of the human user. The information should be structured in such a way that an optimal match between the representation of the information output and the mental model of the user is achieved: If the information to be displayed to the user is presented in such a way that, for example, his spatial perception is addressed users deal with amazingly complex amounts of information per unit of time. Likewise, the information system should be able to record, understand and process as many types of information sent by a user as possible and convert them into corresponding actions. This has the advantage that the user can react more efficiently and quickly to new events and situations. Ease of use and appropriateness of the task are therefore typical features of such an ideal communication medium. These characteristics can be expressed as follows:
- Übereinstimmung zwischen Art, Umfang und Ausgabegeschwindigkeit und Präsentation der ausgegebenen Information mit den sensorischen Eigenschaften des menschlichen Benutzers,- correspondence between type, scope and output speed and presentation of the information given with the sensory properties of the human user
- Berücksichtigung aller Informationskanäle des Benutzers bei der Aufnahme, Erkennung und Interpretation empfangener Steuersignale des Benutzers,Taking into account all information channels of the user when recording, recognizing and interpreting received control signals from the user,
- leichte Erlernbarkeit und intuitive Bedienbarkeit des Mediums,- easy to learn and intuitive operation of the medium,
- 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,- high bandwidth of information transfer to the brain and high throughput of information, - dynamic adaptation of the application to the individual properties, skills, tasks, work and organizational techniques of the user,
- Verwendung einer natürlichen Interaktionssprache mit hohem semantischen Inhalt,- use of a natural interaction language with high semantic content,
- Zuverlässigkeit, Robustheit und Wartbarkeit des Mediums,- reliability, robustness and maintainability of the medium,
- soziale Akzeptanz des Mediums in der Bevölkerung,- social acceptance of the medium in the population,
- Berücksichtigung gesundheitlicher, ergonomischer und sicherheitsrelevanter Aspekte etc.- Consideration of health, ergonomic and safety-related aspects 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 be- reitzustellen, 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 ςfrafischen 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ändert oder mit weiteren sensorischen Reizen angereichert werden. Wesentliche Voraussetzungen sind dabei die Kontrolle der Perspektive in Echtzeit und die Möglichkeit der aktivenThe aim of developing suitable interfaces between man and machine is to start from the properties of human communication channels and skills in order to provide devices, interaction techniques and interfaces that guarantee effective mutual communication via these channels. To achieve this goal, so-called "virtual realities" (VR) are particularly suitable. The term "virtual reality" (VR) is the computer-based generation of an intuitively perceptible or empfindbaren scene consisting of its ς f rafischen presentation and interaction for the user. A virtual environment enables a user to access information that would otherwise not be available at the given place or time. It relies on natural aspects of human perception by using visual information in three spatial dimensions. This information can, for example, be changed in a targeted manner or enriched with further sensory stimuli. Control is essential the perspective in real time and the possibility of active
Einflussnah e auf die dargestellte Szene durch den Benutzer des Systems.The user of the system influences the scene shown.
5 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 Bell) wegungen 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 Bedienbar- 15 keit 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 Co pu- 20 ter "beobachtet" den Benutzer passiv und reagiert in angemessener Weise auf Augen-, Kopf- und/oder Handbewegungen des Benutzers unter EchtZeitbedingungen.5 When navigating through virtual environments, the user can use the control mode that is natural for him. These can be, for example, corresponding arm or leg movements, movements for positioning the head or eyes, rotational movements of the body or bell directed at an object. By using the user's existing skills to control, the cognitive load during the interaction between man and machine can be reduced. This can increase the bandwidth of communication between man and machine and improve the operability of the machine. While the conventional forms of human-machine communication control the machine in a command-oriented manner, no specific commands have to be learned and used again when controlling objects in virtual environments: the computer "passively" observes the user and reacts in an appropriate manner based on the user's eye, head and / or hand movements under real-time conditions.
Die Manipulation der Eigenschaften und Beeinflussung der Ak- 25 tionen 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 30 Welt kommen noch zusätzliche Schwierigkeiten hinzu. Zur Steuerung, Manipulation bzw. Beeinflussung von Objekten ist insbesondere eine reflexartige bzw. kognitive sensorisch-motori- sche Rückkopplung wichtig, die beispielsweise von Rezeptoren in der Haut, kinästhetischen Empfindungen, dem Gleichge- 35 ichtssinn sowie visuellen und/oder akustischen Empfindungen stammt. Dabei ergibt sich in vielen Fällen eine notwendigeManipulating the properties and influencing the actions of objects in a depicted scene requires a complicated interplay of sensors, cognitive processing and motor skills, which are influenced by many factors (individual behavior patterns and skills, experience, environmental influences, etc.). Interactions in a virtual world pose additional difficulties. In order to control, manipulate or influence objects, a reflex-like or cognitive sensory-motor feedback is particularly important, such as that of receptors in the skin, kinesthetic sensations, the sense of balance, as well as visual and / or acoustic sensations comes. In many cases this results in a necessary one
Redundanz, die bei VR-Applikationen nicht immer gegeben ist.Redundancy that is not always the case with VR applications.
Aufgrund der oft unzureichenden sensorischen Rückkopplung beiDue to the often insufficient sensory feedback
VR-Applikationen wird zudem das Erlernen motorischer Fertig- keiten erschwert.VR applications also make it difficult to learn motor skills.
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 wieIn the case of commercial VR applications, a distinction is made between systems in which the user is fully integrated in the virtual environment ("immersion") and systems that only offer a "window" to virtual reality. In addition to the well-known forms of human-machine communication such as
- Direktmanipulationen von Objekten durch manuelle feinmotorische Operationen (Zeigen, Berühren, Greifen, Bewegen, Festhalten etc.),- Direct manipulation of objects through manual fine motor operations (pointing, touching, gripping, moving, holding etc.),
- formalen Interaktionssprachen (Programmiersprachen, Kommandosprachen und formale Abfragesprachen) ,- formal interaction languages (programming languages, command languages and formal query languages),
- natürlichsprachlicher Interaktion,- natural language interaction,
- gestischer Interaktion mittels nonverbaler symbolischer Kommandos (Mimik, Gestik, Gebärden, Bewegungen) sowie- gestural interaction using non-verbal symbolic commands (facial expressions, gestures, gestures, movements) and
- hybriden aufgabenorientierten Interaktionsformen- hybrid task-oriented forms of interaction
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.one can also understand virtual realities as a new form of human-machine communication. As the name "Virtual Reality" already suggests, a certain degree of reality of the representation is necessary for this: The user should be provided with the sensory information that is required to process a task or to achieve a goal.
Die visuelle Wahrnehmung liefert nicht nur Informationen über die Lage, Bewegung, Form, Struktur, Kontur, Textur, Farbe 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 (Bewegungs- parallaxe, 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.The visual perception not only provides information about the position, movement, shape, structure, contour, texture, color or pattern of objects etc., but also information about the relative body position of the viewer and his Movements and the nature of the three-dimensional environment. Synthetically generated environments can be made more realistic by simulating as much of the information as possible in natural environments (movement parallax, vanishing points of perspective, spatial depth and plasticity, lighting and shadows, concealment, gloss, mirroring and diffuse reflection, etc.) , How much and which information should be presented depends on the task at hand. The differences between the real and virtual world determine how realistic the simulation is perceived.
Die visuelle Information muss.zur Realisierung virtueller Re- alitä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 proji- ziert .The visual information must be simulated by a computer in order to implement virtual realities. Similar aspects are relevant as in painting. The computer-aided simulation of three-dimensional worlds usually simulates the projection of individual light beams. ' The starting point of such a simulation is the specification of the environment to be simulated. To do this, the individual objects with their properties and their location must be defined. The intensities of individual pixels are then calculated for visualization and projected onto the output medium.
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-Applika- tionen bewirken daher gleichzeitig eine Anreicherung und eine Einschränkung der Erfahrungsmöglichkeiten des Anwenders.With the help of these simulations, completely new ways of learning and practicing can be realized (examples: vehicle or aircraft simulator), on the other hand, it is always abstracted from certain aspects of the real world. VR applications therefore simultaneously enrich and limit the user's experience.
Grundsätzlich bestehen VR-Systeme aus Sensoren und Aktoren sowie deren Kopplung. Wichtige Hardware-Bestandteile sind un- ter 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.VR systems basically consist of sensors and actuators and their coupling. Important hardware components include the following: - "Displays" for the presentation of the virtual environment: As part of the visual presentation, today mainly monitors, "Head Mounted Displays" (HMD), "Binocular Omni-Oriented Monitors" (BOOM) and projection systems; However, auditory or tactile displays are also used, which react to acoustic or manual user input.
- 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 so- wie bildverarbeitende Prozeduren. ,- Positioning and orientation systems for recording the location and perspective of the user: Here, a distinction is made between determining the absolute position ("Position Tracking") and measuring the deflection of the joints ("Angle Measurement"). Electromagnetic, kinematic, acoustic, optical and image processing procedures are used. .
- Interaktions- und Manipulationssysteme zum Agieren und Reagieren des Anwenders in der virtuellen Umgebung: Hierfür werden Zeigegeräte (2D- bzw. 3D-Mäuse, -Trackballs, -Joy- sticks 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.- Interaction and manipulation systems for acting and reacting to the user in the virtual environment: Pointing devices (2D or 3D mice, trackballs, joysticks etc.) or tactile devices (touchscreens, electromagnetic graphics tablets with stylus, etc .) used; So-called "data gloves" with diffraction and pressure sensors are also increasingly being used. Voice control should also be mentioned in this context.
- Berechnungssysteme und Software zur Erzeugung der virtuellen Umgebung unter EchtZeitanforderungen.- Calculation systems and software for creating the virtual environment under real-time requirements.
- Netzwerke zur Integration verschiedener Benutzer, durch die sich neue Formen der Zusammenarbeit entwickeln können.- Networks for the integration of different users, through which new forms of cooperation can develop.
Die verschiedenartigen technischen Varianten von heim- 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:The various technical variants of home or head-based systems for the visualization of virtual realities are summarized in English as 'Visually Coupled Systems' (VCS). They consist of the following important components:
1. einem am Kopf bzw. Helm befestigtes Display,1. a display attached to the head or helmet,
2. einem Gerät zum Bestimmen der Kopf- und/oder Blickbewegungen des Anwenders,2. a device for determining the user's head and / or eye movements,
3. einer Quelle visueller Information, die von der Kopf- und/oder Blickrichtung des Anwenders abhängt.3. a source of visual information that depends on the user's head and / or line of sight.
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.When using such ^ system for VR applications both information can be simultaneously performed from the real and from the virtual environment. One speaks of "See-Through Displays" for the representation of enriched realities.
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:Tracking head movements is an important part of VR applications. Usually the position and orientation of the head in the room are determined, advanced systems can also follow the direction of the gaze. Most systems use either ultrasound, magnetic or light energy to communicate between the head-mounted transmitters and the receivers. Important technical data that play a role in the selection of these systems are:
- die Anzahl der Freiheitsgrade für die Bewegungsrichtungen, welche registriert und verfolgt werden können,the number of degrees of freedom for the directions of movement which can be registered and tracked,
- der erfassbare Winkelbereich,- the detectable angular range,
- die statische Genauigkeit (Erschütterungsempfindlichkeit) ,- the static accuracy (vibration sensitivity),
- das Auflösungsvermögen, - die Zuverlässigkeit,- the resolving power, - the reliability,
- der Datendurchsatz und die Bildschirm-Abtastfrequenz,- the data throughput and the screen sampling frequency,
- die Schnittstelle zum Computer sowie- the interface to the computer as well
- weitere Performanzaspekte .- further performance aspects.
VR-Applikationen lassen sich in einer Reihe von unterschiedlichen Bereichen in der Praxis erfolgreich anwenden. Im Folgenden werden einige Anwendungsmöglichkeiten beispielhaft skizziert .VR applications can be successfully used in practice in a number of different areas. Some possible applications are outlined below as examples.
- 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.- Use in the training area: By learning to deal with (virtual) objects, interactive demonstrations, visualization of abstract concepts, virtual training in behavior in dangerous situations, virtual research into distant places or epochs, knowledge can be imparted, creative skills can be trained and behavioral patterns can be trained.
- Einsatz beim Fahr- und Flugtraining in entsprechenden Simu- latoren: Durch den Einsatz von Simulatoren kann das Verhalten insbesondere in Notsituationen geschult werden.- Use in driving and flight training in appropriate simulators: By using simulators, behavior can be trained, especially in emergency situations.
- Einsatz im Bereich von Computerspielen: Durch die Möglichkeit der Navigation durch eine virtuelle Szene und die Mög- lichkeit 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.- Use in the field of computer games: The possibility of navigating through a virtual scene and the possibility of specifically controlling and influencing virtual objects creates a realistic impression, which can significantly increase the attractiveness of a computer game for the user.
Die heute verfügbaren Technologien zur Eingabe von Information in ein datenverarbeitendes System lassen sich nach den verwendeten Sensoren in vier Gruppen einteilen: 1.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) undThe technologies available today for entering information into a data processing system can be divided into four groups according to the sensors used: 1. mechanical input systems (eg keyboards, mice, trackballs and joysticks), 2. electrical input systems (eg tactile displays and graphics tablets), 3. optical input systems (eg light pen) and
4. akustische Eingabesysteme (z.B. Spracheingabe- und Sprach- interpretationssysteme) .4. Acoustic input systems (e.g. voice input and interpretation systems).
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.In the following, the aids for inputting information which are used according to the current state of the art and which are used to control objects in the area of VR applications will be briefly discussed.
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.Conventional input systems such as keyboards, mice, trackballs and joysticks are widely used today. They are used to control cursors, mouse pointers, etc., for example to be able to navigate through a virtual scene or to move virtual objects on the screen. The disadvantage of these input systems is that they require a storage area (i.e. a fixed location) in order to be operated in an efficient manner.
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. 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 beschich- tete 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 an- stelle dieser Schichten ein Gitter von feinen Drähten.With a touchscreen, on the other hand, it is possible to point directly at objects depicted on the screen without the need for additional space-consuming additional devices on the desk. Low-resolution touchscreens have 10 to 50 positions in the horizontal and vertical directions and use a horizontal and vertical row of infrared LEDs and photo sensors to build up a grid of invisible light rays right in front of the screen. When the screen is touched, both vertical and horizontal light beams are interrupted. The current finger position can be determined from this information. Another known embodiment of touch-sensitive information input devices is the capacitively coupled touch panel. This provides a resolution of approximately 100 positions in each direction. If a user touches the conductive coated glass plate of the touchscreen with a finger, the current finger position can be determined based on the change in impedance. Other high-resolution panels use two minimally spaced, transparent layers. One is coated with a conductive material, the other with a resistance material. These two layers touch through the pressure of the finger, and the current finger position can then be determined by measuring the resulting voltage drop. A lower-resolution and cheaper variant of this technology uses a grid of fine wires instead of these layers.
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 spe- ziellen 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.According to the state of the art, various solutions for the problem of real-time motion control of virtual objects are available today, each of these solutions being optimized for a specific application. Each of these solutions therefore has certain limitations. In order to be able to begin to explain some of the most important of these solutions, it is necessary to briefly address their most important aspects.
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, voneinan- der 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 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.One possibility for real-time motion control of virtual or real objects has recently emerged from the fact that input devices for computers have become known which enable the simultaneous input of control signals of several degrees of freedom that are independent of one another. The possibilities created by this far exceed those that exist, for example, when using a mouse, which can only be controlled two-dimensionally (e.g. on the shelf of a desk). It is also known to use a mouse, for example, with additional switches to provide, however, these switches have the disadvantage that they do not allow the input of analog data, but rather are limited to binary data (on / off).
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 Compu- ter überträgt. Dabei wird ein analoger Bewegungsablauf inVarious input devices are also known from the prior art which can generate analog control signals of different degrees of freedom that are independent of one another, each of these analog signals thus being able to be used as a parameter value of a control. For example, US-A-5, 757, 360 discloses an egg-shaped input device for computers which can be moved freely in space by a hand of the user, determines its current positions, directions of movement, speeds and accelerations, and these kinematic data are transmitted wirelessly transmits to the computer. An analogous sequence of movements is shown 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 Grafikdar- Stellung zugeordnet werden und nur als solche dargestellt werden können.Form of a movement pattern is identified, from which movement commands are derived and converted into an animated graphic representation. The movement patterns are automatically recognized with the help of a pattern recognition algorithm. Control commands are also generated. The disadvantage of this method is that it cannot be freely specified, since the user's movement sequences, which are recorded by the input device in an analog manner, correspond to corresponding movement sequences of stored movement sequences of an animated graphic representation and can only be represented as such.
Eingabegeräte, die über manuell zu betätigende Kraft-Momen- ten-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- bei kann wiederum in vorteilhafter Weise die intuitive räumliche Steuerung in drei translatorischen sowie drei rotatori- schen Freiheitsgraden auf ein stufenloses räumliches Mischen oder Steuern einer großen Anzahl von optischen und/oder aku- stischen Parametern übertragen werden.Input devices which have manually operated force-torque sensors are known, for example, from the patent documents DE 36 11 336 C2, DE 37 64 287 and EP 0 979 990 A2. From the last-mentioned patent specification, it is also known to use such a force-torque sensor for controlling a real or virtual mixing or control desk, for example in order to create and design novel color, light and / or sound compositions. Here- in turn, the intuitive spatial control in three translational and three rotational degrees of freedom can be advantageously transferred to a continuous spatial mixing or control of a large number of optical and / or acoustic parameters.
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-Schnitt- stelle (engl.: "Musical Instrument Digital Interface") verfü- gen.Manually controllable input systems that allow navigation in three dimensions are successfully used in a number of different technical application fields. Such an application field is represented, for example, by control devices for controlling the functions of electronic musical instruments (especially in the case of synthesizers and master keyboards), which have a so-called MIDI interface (“Musical Instrument Digital Interface”).
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.Such a three-dimensional control device for electronic musical instruments is provided, for example, by the D-beam controller integrated in the keyboards EM-30 and EM-50 from Roland. By using an extremely sensitive infrared light beam, the hand and / or body movements of a user can be detected without contact above a surface coated with infrared sensor elements. Thanks to the D-Beam technology, these acoustic movements of the user's hand and / or body can be used to modify or control individual acoustic parameters of recorded improvisations or compositions in real time. The D-Beam controller converts the user's movements into MIDI signals and analog control signals.
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- 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.Since one of the preferred exemplary embodiments of the present invention is also based on a control device for controlling stored parameterized audio data with the aid of parameterized control signals which can be controlled using controllable virtual objects via a MIDI interface. be transferred to at least one electronic musical instrument, the aspects of the MIDI standard that are important for understanding the invention are briefly described below.
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.The MIDI interface is a digital data transmission format between electronic musical instruments, computers and peripheral devices. The MIDI standard is widely used today and has been used by many musicians and composers since its introduction in 1983.
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-Applikatio- nen, 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 opens up a very efficient method of displaying audio data, and this makes MIDI a very attractive data transfer protocol not only for composers or artists, but also for a variety of computer applications that are able to generate sound patterns , such as multimedia applications or computer games. Thanks to the publications of the General MIDI System Specification, the most common PC / MIDI interfaces are widely recognized by users today. MIDI is also supported by the Microsoft Windows operating system and other operating systems. Due to the development and marketing of inexpensive synthesizers, the MIDI standard is becoming increasingly popular as the number of applications increases.
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. Standardisiert wurde MIDI von der MIDI Manufacturers Associa- tion (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 Inkompatibilitäten unter den Geräten verschiedener Hersteller die Folge.MIDI was originally developed to be able to couple two or more keyboards from different manufacturers. At the time, no one foresaw that complete music productions could be created using sequencer systems using the MIDI data format. Today, MIDI is mainly used as a transmission medium to replace or supplement digitized audio data in computer games or multimedia applications. MIDI was standardized by the MIDI Manufacturers Association (MMA), which includes all manufacturers of digital musical instruments worldwide. This committee defines the norm binding for all members, among other things also the command structure of the MIDI protocol defined in the MIDI standard. Without this standard, incompatibilities among devices from different manufacturers would result.
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 lesbarerIn contrast to the transmission of analog audio data, when transmitting sound patterns via MIDI interface from one or more keyboards to a computer (or in the opposite direction), only bit sequences (so-called "MIDI events") are transmitted, which contain the significant acoustic parameters of the pieces of music played or to be played on the individual keyboards in electronically readable
Form beinhalten. Diese Programmierbefehle beinhalten MIDI-Se- quenzen, die den Synthesizer beispielsweise anweisen, welche Tonspuren bespielt werden sollen, welche Solo- bzw. Be- ςfleitinstrumente 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-Spiel- informationen" 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.Include form. These programming instructions include MIDI-Se- quences, for example, instruct the synthesizer, which tracks are to be recorded, which solo or loading ς f leitinstrumente to be used for an arrangement and which musical parameters are transmitted. Acoustic parameters are understood to mean, for example, pitches, note or pause values, volumes, tempos, articulation instructions, timbres, pedal, vibrato, chorus, reverb, overtone and / or other special effects. In the following, these acoustic parameters will be referred to as "MIDI game information". The playback of the audio data on a keyboard is therefore not an analog recording of pieces of music previously recorded on a keyboard, but the exact reproduction of the recording process itself. The polyphonic voices of a playback synthesizer are at least partially occupied.
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- 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 abgespei- chert 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 abge- tastete 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.Compared to the use of sampled audio data stored on a floppy disk or CD-ROM, the generation of sound patterns (sounds) using MIDI Synthesizers have many ~ advantages. One of these advantages relates to the storage space required to store the parameterized audio data. Files in which digitally sampled audio data are normally saved in a PCM format (such as ".WAV 'files) are usually quite large. This is particularly the case for long pieces of music recorded in stereo quality at a high sampling rate In contrast, MIDI files are extremely small, for example files in which high-quality sampled audio data are stored in stereo quality contain approximately 10 Mbytes of music played per minute, while a typical MIDI sequence has a size of less than 10 kBytes per Minute of music is played back, because MIDI files - as already mentioned - do not contain the sampled audio data, but only the programming commands required by a synthesizer to generate the desired sound.
Da die MIDI-Spielinformationen keine unmittelbaren Informa- tionen ü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:Since the MIDI game information does not convey any immediate information about the type of audio data represented, individual acoustic parameters of this MIDI game information can subsequently be exchanged as desired. This also has great advantages:
- Ein Komponist kann sein Werk nachträglich variabel instrumentieren bzw. umarrangieren.- A composer can subsequently instrument or rearrange his work in a variable manner.
- Die beim Einspielen möglicherweise aufgetretenen Fehler- The errors that may have occurred during the import
(z.B. "falsche Töne") können nachträglich korrigiert wer- den .(e.g. "wrong tones") can be corrected afterwards.
- Mehrere Synthesizer können beispielsweise ein und dieselbe Stimme wiedergeben (Unisono) , um mehr Klangfülle zu erzielen u.v.m. 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.- Several synthesizers can, for example, play the same voice (unison) to achieve more sonority and much more The additional possibility of being able to edit pieces of music recorded on one or more synthesizers or other electronic musical instruments on the screen, i.e. to be able to change, add, delete, move or transpose individual notes or pauses, groups of notes or entire staves, considerably simplifies the work of a composer ,
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:A complete MIDI word usually consists of three bytes. The so-called status byte is sent first. It is a notification of what type of message it is. The status byte is followed by two data bytes, which contain information about the respective content of the message. The following example refers to the MIDI representation for "switching on" a tone of medium pitch (c 1 ), which should sound at a medium volume (Italian: "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: Zs e [128ι0; 25510] . Da bei den Daten- Bytes das MSB auf "0" gesetzt ist, also nicht mehr als Wertindikator herangezogen werden kann, verbleiben für die Daten- Bytes nur noch jeweils sieben Bits, so dass folglich für dieThe first bit ("Most Significant Bit", MSB) in the binary representation of the status byte is always assigned the value "1", with data bytes the MSB always has the value "0". In this way, status and data bytes can be clearly differentiated. For the decimal values Z s for a status byte, the following applies as a result of the "1" in the MSB: Z s e [128ι 0 ; 255 10 ]. Since the MSB is set to "0" for the data bytes, which means that it can no longer be used as a value indicator, the data Bytes only seven bits each, so that consequently for the
Dezimalwerte ZDi bzw. ZD2 der beiden Daten-Bytes gilt: ZD1 e [010;12710] und ZD2 e [0lo;12710]. Diese 128 verschiedenen "Note On"- bzw. "Note Off-Kombinationen reichen völlig aus, da 128 verschiedene Tonhöhen - angeordnet in einer gleichschwebend- temperierten, chromatischen Tonskala (d.h. im Abstand von Halbton-Intervallen) - den Tonumfang (Ambitus) eines modernen Konzertflügels mit 88 Tasten weit übersteigt.Decimal values Z Di and Z D2 of the two data bytes apply: Z D1 e [0 10 ; 127 10 ] and Z D2 e [0 lo ; 127 10 ]. These 128 different "Note On" or "Note Off combinations are completely sufficient, since 128 different pitches - arranged in an equal-tempered, chromatic tone scale (ie at intervals of semitone intervals) - the range (ambitus) of a modern one Concert grand with 88 keys far exceeds.
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 Spieliriformationen 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 { 010, ... , 15ι0} bzw. Ak e { 00002, ... , 11112} ) ü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.In order to be able to address individual devices within a MIDI system in a targeted manner, there are a total of 16 MIDI channels. The MIDI channel of the transmitter must be identical to that of the respective receiver. The basic principle here is that a MIDI data line transports all game information on all 16 MIDI channels, whereby the connected tone generators select the messages that are intended for them. With the help of the last four bits of the status byte, the address A k of a selected MIDI channel k (where ke {0 10 , ..., 15ι 0 } or A k e {0000 2 , ..., 1111 2 }) transferred. This means that only the first four bits of the status byte contain the status information of a MIDI sequence (eg "Note On", "Note Off" etc.).
Für das Beispiel des oben beschriebenen "Note On"-Befehls bedeutet das konkret, dass der erste Kanal (k = 0) mit der Adresse A = 00002 selektiert wurde. 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 Kanala- dressierung überprüfen, die er, beauftragt durch die jeweilige MIDI-Kanal-Einstellung, empfangen uss. '-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. For the example of the "Note On" command described above, this means specifically that the first channel (k = 0) with the address A = 0000 2 was selected. If a byte of such a MIDI word is received by a synthesizer, the MSB is first used to check whether there is a status byte or a data byte. The receiver must also check all status bytes with regard to their channel training, which they receive, instructed by the respective MIDI channel setting, etc. Discovered '-To a MIDI event with its intended address, the recipient decrypts the status byte following data bytes and generates the appropriate tones. This principle can be compared to the reading of a choir singer or instrumentalist who, when singing or playing a piece of music, only reads the voice intended for him from a polyphonic set of sounds, an arrangement or a score.
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 .The functions of two of the most common control devices found in synthesizers and master keyboards are briefly described below: the "pitch bend wheel" for the continuous detuning of the pitches of the tones of the keys of a synthesizer and the "modulation wheel" for modulating the tone characteristics the pitches of tones of struck keys on a synthesizer.
Das MIDI-Datenformat sieht als kleinstmoglich.es 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-Va¬ riation (engl.: "Pitch Bending") zu erreichen, werden soge- nannte 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 Tasten, welche auf der Tastatur des Synthesizers niedergedrückt werden, durch eine Drehbewegung am Pitch Bend Wheel in Flichtung höherer bzw. tieferer Frequenzen verstimmen. Normalerweise können damit Verstimmungen von bis zu einem gleich- schwebend-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 gleich- schwebenden-temperierten Stimmung.The MIDI data format provides for the smallest possible interval between different pitches of equal-tempered halftone steps or "chromas" (ie enharmonially equivalent intervals such as excessive primes, small seconds or double-reduced thirds). In order to achieve a continuous frequency-Va ¬ riation (engl .: "pitch bend"), so-called are pitch bend wheel data is required to be generated with a respective control instrument of the synthesizer (the "pitch bend wheel") can. It is usually a wheel or (more rarely) a joystick that can be moved in four directions. With synthesizers equipped with these pitch bend wheels, the pitches of the Keys that are depressed on the keyboard of the synthesizer are detuned by rotating the pitch bend wheel in the direction of higher or lower frequencies. Normally, detunings of up to an equal-tempered whole tone can be generated in the direction of higher or lower frequencies. The pitch bend wheel is usually equipped with a return mechanism that springs back to the middle or normal position when the wheel is released. This position corresponds to the pitches of the depressed keys on the basis of the floating mood.
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.With the help of a modulation function, which can usually be carried out with another control instrument of the synthesizer (the "modulation wheel"), the tones of the keys struck on the keyboard of the synthesizer can optionally be provided with a vibrato effect. Alternatively, this control instrument can also be used to achieve other effects, for example to mofify the sound brightness or the resonance of the played tones by changing their overtone spectrum. If the modulation wheel is turned to a first point of impact, the depth of the effect is minimal; if it is turned up to an opposite second anchor point, the effect depth is maximum.
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-Con- troller eingegangen werden.In order to be able to explain the control of individual MIDI functions with the aid of parameterized control signals, the most important of the necessary MIDI controllers will be briefly discussed below.
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 an¬ gesprochen werden. Das zweite Daten-Byte ist für den Regelbe- reich verantwortlich. Beispielsweise kann mit Hilfe des für Frequenzmodulationen zuständigen Controllers Nr. 1 den vomWith the help of the first data byte of a MIDI word maximum of 128 different controller addresses and up to 128 different play or other MIDI functions can be spoken to ¬. The second data byte is responsible for the control area. For example, with the help of Frequency modulations responsible controller No. 1 from
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:A vibrato or tremolo effect can be added to synthesizers. The following table lists the most common controllers with their numbers (addresses) and designations:
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 Puls- weite der generierten Schwingungen. Addresses 12 to 31 are not assigned and offer the user the possibility of freely assigning MIDI functions. Depending on the nature of the respective synthesizer, these addresses can sometimes be assigned very unusual physical parameters, such as the oscillator frequency or pulse width of the generated vibrations.
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 63 für die Adressen 7 bis 31 bewirkt.The controllers 32 to 38 serve to more finely resolve the range of values of the controller addresses 1 to 6. The same is done by controller numbers 39 to 63 for addresses 7 to 31.
Die bisher beschriebenen Spielhilfen zeichnen sich durch eine gemeinsame Eigenschaft aus: Sie lassen sich (in 128 oder mehr Einzelschritten) stufenlos regeln. Der Oberbegriff für dieseThe game aids described so far are characterized by a common property: they can be (in 128 or more Step by step). The generic term for this
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 is "Continuous Controller". In contrast, there are other controllers that perform switch functions and are therefore generally called "switch controllers". The following table gives an overview of the most important of these controllers:
Bei genauerer Betrachtung des zweiten Daten-Bytes von Controller 64 findet man nur zwei Werte vor, nämlich A closer look at the second data byte of controller 64 reveals only two values, namely
00000000, (= 010) für "Pedal Off" und (= 127ιo) für "Pedal On" .00000000, (= 0 10 ) for "Pedal Off" and (= 127ιo) for "Pedal On".
Das MIDI-Datenformat lässt prinzipiell jedoch eine differenziertere Interpretation des Wertebereichs 110 bis 126ι0 zu. Beispielsweise kann so auch ein mehrstufiger Sustain-Effekt vorgesehen sein. Bei Synthesizern, die diesen mehrstufigen Sustain-Effekt zulassen, wird die Abklingphase von Klan- fereignissen 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.In principle, however, the MIDI data format allows a more differentiated interpretation of the value range 1 10 to 126ι 0 . For example, a multi-stage sustain effect can also be provided. For synthesizers that allow this multi-stage sustain effect, the decay phase of sound events with a "half" pedal depressed is reduced accordingly compared to the decay phase of sound events of the same pitch and volume with the pedal depressed to the stop.
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. 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 wer- den.Normally, the controller addresses, for example for the modulation wheel, the holding pedal or sills that can be operated with the foot to influence the dynamics, are already defined. If one of these game aids is used, the sent controller address is fixed. However, modern synthesizers and master keyboards also have freely definable controllers, ie any controller number can be assigned to the intended play aids (pedals, sills, wheels and sliders). Some tone generators in turn allow the controller functions to be redefined in the device itself. The controller number received can be freely assigned to an internal function.
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-Syn- these) und die Verwendung von Wavetables (WAV-Synthese) .A large number of different technologies and processes are used today to produce sound with the aid of electronic musical instruments, computers or sound cards. Two widely used techniques of sound generation using electronic musical instruments are frequency modulation (FM synthesis) and the use of wavetables (WAV synthesis).
FM-Synthese ist ein Verfahren, das von Sound-Karten und Com- putern 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-Klang uster somit wesentlich realistischer. 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.FM synthesis is a process used by sound cards and computers to mimic the tones of acoustic musical instruments by electronic means. Sounds generated with the help of FM synthesis are easily recognizable as such - in contrast to sound patterns that were generated by WAV synthesis with the help of wavetables. Master keyboards and synthesizers that have wavetables are relatively expensive, but are often preferred by many professional and amateur musicians because of their high quality playback. The sound patterns are generated by wavetables that combine and / or reproduce stored, digitally sampled original sounds ("Samples") of acoustic musical instruments. Compared to FM synthesis, in which electronic sounds are generated with the help of the computer, wavetable sounds appear much more realistic. With the help of sound cards, the possibilities of conventional computers for generating audio signals and sound patterns can be expanded. Sound cards are essential for any application that uses sound effects. In order to be able to translate analog audio data into digital computer language, sound cards have appropriate devices for digitizing analog sounds. The sound generation by a sound card is based on either an FM synthesis or a WAV synthesis.
AUFGABE DER VORLIEGENDEN ERFINDUNGOBJECT OF THE PRESENT INVENTION
Ausgehend von dem oben genannten Stand der Technik, widmet sich die vorliegende Erfindung?.der Aufgabe, komfortable und zuverlässig arbeitende Verfahren 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 dabei die Bewe- gungssteuerung von Objekten in Echtzeit bzw. die Echtzeit- Steuerung von elektronisch erzeugten Audiosignalen vereinfacht werden.Based on the above-mentioned prior art, is the present invention dedicated to ? the task of providing comfortable and reliably working methods by means of which the user is able to actively control virtual and / or real objects, the existing skills of the user being used to transmit information. In particular, the movement control of objects in real time or the real time control of electronically generated audio signals is to be simplified.
Diese Aufgabe wird erfindungsgemäß durch die Merkmale der un- abhängigen Patentansprüche gelöst. Vorteilhafte Ausführungsbeispiele, die den Gedanken der Erfindung weiterbilden, sind in den abhängigen Patentansprüchen definiert.This object is achieved according to the invention by the features of the independent claims. Advantageous exemplary embodiments which further develop the idea of the invention are defined in the dependent patent claims.
ZUSAMMENFASSENDE DARSTELLUNG DER VORLIEGENDEN ERFINDUNGSUMMARY OF THE PRESENT INVENTION
Die Erfindung schlägt zur Lösung der im vorangehenden Abschnitt definierten Aufgabe vor, ein effizientes Verfahren zur grafischen Visualisierung und Echtzeit-Ansteuerung von virtuellen oder realen Objekten zur Erzeugung und/oder Be- einflussung von Bild- bzw. Tonsequenzen, mit dessen Hilfe auf 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 ein Verfahren zur Animation und Bewegungssteuerung eines Gelenk- Objekts in (Quasi-) Echtzeit, ein Verfahren zur frei spezifizierbaren Steuerung von optischen bzw. akustischen Parametern, ein Computersoftware-Produkt zur Ausführung eines solchen Verfahrens sowie ein System zur Echtzeit-Bewegungssteuerung von virtuellen oder realen Objekten.To achieve the object defined in the preceding section, the invention proposes an efficient method for graphic visualization and real-time control of virtual or real objects for generating and / or influencing image or sound sequences Objects or real objects displayed on a screen can be manipulated, controlled or influenced in real time in a comfortable and reliable manner by interactive control commands of a user in their properties and / or actions. In particular, the present invention includes a method for animation and motion control of a joint object in (quasi) real time, a method for freely specifiable control of optical or acoustic parameters, a computer software product for executing such a method and a system for real-time Motion control of virtual or real objects.
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.The present invention relates in particular to input devices which can generate control signals for various degrees of freedom that are independent of one another, and this in each case by means of analog signals. Each of these analog signals can thus be used as a parameter value when controlling virtual objects.
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 Dis- plays 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. 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 derIn contrast to conventional manually operated, mechanical or touch-sensitive input mechanisms via keyboard, mouse, trackball, joystick, graphics tablet with stylus, tactile displays, the technologies used to input the control commands issued by the user are devices for recording , Recognition, interpretation and processing of three-dimensional movements of a user. The user is therefore no longer dependent on the presence of additional hardware devices for the manual input of control commands. The inputted information can be evaluated instead or additionally using methods of signal or pattern recognition. Furthermore, the type of input method can be tailored to the individual skills of the user. One aspect of the present invention is that reference patterns for animation and motion control of objects, for designing the shape, color and structure of the surfaces of virtual objects and for generating and / or influencing image or sound sequences are stored in advance. Depending on the control signals of the user, these reference patterns can then be called up in real time as parameter values for the generation and / or influencing of animation effects, for the surface design of the objects, for the control or targeted manipulation of video or audio data. The respective reference patterns can be stored in a standardized manner, so that, based on such a real-time control, the above-mentioned parameter values are changed by a module-like exchange of the respective reference patterns at a corresponding interface of the
Echtzeit-Steuerung mit verhältnismäßig geringem Aufwand erfolgen kann.Real-time control can be done with relatively little effort.
1.Verfahren zur Animation und Bewegungssteuerung eines Ge- lenk-Objekts in Echtzeit durch Ansteuerung mit Hilfe para- metrisierter Bewegungsmuster1.Procedure for the animation and movement control of a joint object in real time by activation with the aid of parameterized movement patterns
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 pa- rametrisierter Form einer Echtzeit-Bewegungssteuerung zur Verfügung gestellt werden.According to the underlying invention, it is possible to dispense with completely reprogramming a real-time movement sequence; rather, known movement patterns can be made available via a standardized interface in a parameterized form of real-time movement control.
Ein bevorzugtes Ausführungsbeispiel der zugrunde liegenden Erfindung beruht auf einem Verfahren zur Echtzeit-Bewegungssteuerung eines Gelenk-Objekts. Dabei wird zunächst wenigstens ein parametrisiertes Bewegungsmuster zu wenigstens einem Oberflächenmuster für das Objekt definiert. Werden dann mit Hilfe eines Eingabegeräts Ansteuersignale in die Echt- zeit-Bewegungssteuerung eingegeben, berechnet diese Skelett-A preferred exemplary embodiment of the underlying invention is based on a method for real-time motion control of a joint object. First, at least one parameterized movement pattern is defined for at least one surface pattern for the object. If control signals are then fed into the real time motion control entered, this calculates skeletal
Anderungsdaten (d.h. die Lageanderungen der Konturen eines virtuellen Objekts bzw. eines Gerusts, bestehend aus den durch Kanten verbundenen Gelenkpunkten eines virtuellen Ob- ekts) als Parameterwerte auf Grundlage der Ansteuersignale und wenigstens eines parametrisierten Bewegungsmusters. Dabei geben die Skelett-Anderungsdaten translatoπsche und/oder ro- tatoπsche Änderungen der Lage bzw. Orientierung der Gelenke des Objekts wieder. Schließlich wird die Oberflache des vir- tuellen Gelenk-Objekts auf Grundlage der Skelett-Anderungsdaten und wenigstens eines Oberflachenmusters berechnet. Indem die zuletzt genannten Schritte dicht aufeinanderfolgend wiederholt werden, erhalt man (abhangig von den Ansteuersignalen des Benutzers) eine Bewegungssteuerung des Objekts, die von einem Betrachter nicht mehr von einer Bewegungssteuerung m Echtzeit unterschieden werden kann.Change data (i.e. the position changes of the contours of a virtual object or a framework, consisting of the hinge points of a virtual object connected by edges) as parameter values based on the control signals and at least one parameterized movement pattern. The skeleton change data reflect translatio and / or rotatochange changes in the position or orientation of the joints of the object. Finally, the surface of the virtual joint object is calculated on the basis of the skeleton change data and at least one surface pattern. By repeating the last-mentioned steps in close succession, one obtains (depending on the control signals of the user) a movement control of the object which can no longer be distinguished by a viewer from a movement control in real time.
Durch Austausch bzw. erneute Definition eines parametrisierten Bewegungsmusters und/oder Oberflachenmusters kann also mit sehr geringem Aufwand eine Bewegungssteuerung eines neuartigen Gelenk-Objekts erzielt werden.By exchanging or redefining a parameterized movement pattern and / or surface pattern, movement control of a novel joint object can be achieved with very little effort.
Gemäß dem Ausfuhrungsbeispiel der zugrunde liegenden Erfindung können Ansteuersignale für wenigstens sechs unabhängige Freiheitsgrade simultan eingegeben und m Echtzeit verarbeitet werden. Dabei handelt es sich beispielsweise um Ansteuersignale für drei translatoπsche und drei rotatoπsche Freiheitsgrade m einem virtuellen dreidimensionalen Vektorraum.According to the exemplary embodiment of the underlying invention, control signals for at least six independent degrees of freedom can be input simultaneously and processed in real time. These are, for example, control signals for three translatio and three rotatio degrees of freedom in a virtual three-dimensional vector space.
Ausgehend von den ermittelten momentanen Positionsvektoren des Eingabegeräts , können erf mdungsgemaß insbesondere die ersten und zweiten zeitlichen Ableitungen der Ansteuersignale ( also die Geschwmdigkeits-, Beschleunigungs- , Wmkelge- schwmdigkeits- bzw. Winkelbeschleunigungsvektoren) ermittelt 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 er- forderlich 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.Based on the determined instantaneous position vectors of the input device, the first and second time derivatives of the control signals (ie the speed, acceleration, angular velocity or angular acceleration vectors) can be determined according to the invention and processed. The controller thus determines the change in the control signals over time, so that, in contrast to the already mentioned US Pat. No. 5,757,360, for example, no separate acceleration sensor is required. The acceleration can rather be determined by evaluating the development of the control signals with the help of the motion control itself. The assignment of the control signals or their time derivatives as parameter values for the stored movement patterns can be freely specifiable.
2.Verfahren zur Echtzeit-Steuerung von akustischen Parametern aufgezeichneter Audiodaten mit Hilfe von parametrisierten Klangmustern ..- 2.Procedure for real-time control of acoustic parameters of recorded audio data with the aid of parameterized sound patterns ..-
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 Klangmu- ster können dann - abhängig von den jeweiligen Ansteuersignalen des Benutzers als Parameterwerte in Echtzeit abgerufen werden.In addition or alternatively, in a further exemplary embodiment of the underlying invention, audio data can also be specifically influenced in real time with the aid of parameterized control signals from the user. Digitally stored, parameterized sound patterns, such as the acoustic parameters of (according to the so-called MIDI standard) digitally recorded pieces of music, which can be controlled via the parameterized control signals of the user, can be specifically modified. These sound patterns can then be called up as parameter values in real time, depending on the respective control signals of the user.
3.Verfahren zur frei spezifizierbaren Steuerung von animier- ten Grafiken, Video- und/oder Audiodaten3.Procedure for the freely specifiable control of animated graphics, video and / or audio data
Nach einem weiteren Ausführungsbeispiel der vorliegenden Erfindung ist ein Verfahren zur frei spezifizierbaren Steuerung von animierten Grafiken, Video- und/oder Audiodaten mit Hilfe optischer bzw. akustischer Parameter vorgesehen. Für die Er- zeugung und/oder Beeinflussung dieser Bild- bzw. Tonsequenzen ist dabei wenigstens ein vordefiniertes parametrisiertes Be- wegungs-, 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.According to a further exemplary embodiment of the present invention, a method for freely specifiable control of animated graphics, video and / or audio data using optical or acoustic parameters is provided. For the Generation and / or influencing of these image or sound sequences is at least one predefined parameterized movement, surface, sound and / or lighting pattern stored as a reference pattern. For this purpose, control signals of different degrees of freedom are evaluated by an input device and used as parameter values for generating or influencing animated graphics, video and / or audio data with the aid of at least one stored reference pattern. The assignment of the control signals of a degree of freedom to a specific reference pattern can be freely specified by the user.
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.In addition, temporal derivations of the control signals can optionally be assigned to a specific reference pattern. The coupling parameters of the assignment, such as the damping and the amplification, can also be freely adjustable by the user.
4. Computersoftware-Produkt zur frei spezifizierbaren Steue- rung von animierten Grafiken, Video- und/oder Audiodaten4. Computer software product for freely specifiable control of animated graphics, video and / or audio data
Nach einem weiteren Aspekt der vorliegenden Erfindung ist ein Computersoftware-Produkt vorgesehen, mit dessen Hilfe ein Verfahren gemäß einem der oben beschriebenen Ausführungsbei- spiele durchgeführt werden kann.According to a further aspect of the present invention, a computer software product is provided, with the aid of which a method according to one of the exemplary embodiments described above can be carried out.
5. System zur Echtzeit-Bewegungssteuerung von virtuellen und/oder realen Objekten5. System for real-time motion control of virtual and / or real objects
Erfindungsgemäß kann auch ein System zur Echtzeit-Bewegungssteuerung von Objekten vorgesehen sein, das einen Speicher aufweist, in dem wenigstens ein parametrisiertes Bewegungsmu¬ ster und wenigstens ein Oberflächenmuster des Objekts abgelegt sind. Dieses System kann weiterhin ein Eingabegerät zur Eingabe von Ansteuersignalen für die Echtzeit-Bewegungssteue- rung 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 Skelett-Änderungsdaten und je eines ausgewählten Oberflächen- usters berechnet.According to the invention, a system may be provided for real-time motion control objects that has a memory in which are stored in the at least one parameterized Bewegungsmu ¬ edge and at least a surface pattern of the object. This system can also have an input device for inputting control signals for real-time motion control. tion. Furthermore, a motion generator can be provided in order to calculate skeleton change data on the basis of the control signals as parameter values and at least one parameterized motion pattern. The skeleton change data reflect translational and / or rotational changes in the position or orientation of the joints of the object. In addition, a surface generator can be provided which calculates the surface of virtual joint objects on the basis of their skeleton change data and a selected surface pattern.
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 rotatori- sehe Freiheitsgrade in einem dreidimensionalen Vektorraum konzipiert sein. Zusätzlich kann auch eine Einheit zur Ermittlung und Verarbeitung der zeitlichen Ableitungen dieser Ansteuersignale vorgesehen sein.The input device can be designed for the simultaneous input of control signals for at least six independent degrees of freedom. It can be designed in particular for the input of control signals for three translational and three rotary degrees of freedom in a three-dimensional vector space. In addition, a unit for determining and processing the time derivatives of these control signals can also be provided.
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.In order to enable the user to control stored audio data in real time, a sound generator can also be provided for generating sound signals by linking digitally parameterized sound patterns with digital control signals that are present in parameterized form.
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.In addition, a unit for the optional assignment of the control signals or their derivatives can also be provided as parameter values for the parameterized movement, surface, sound and / or lighting patterns.
6. 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-, Plang- und/oder Beleuchtungsmuster als Referenzmuster hinterlegt ist. Das System weist weiterhin eine Recheneinheit zur 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 Ein- Stelleinheit 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ög- liehen. Ferner kann sie eine frei wählbare Einstellung von Kopplungsparametern der Zuordnung, wie beispielsweise der zeitlichen Dämpfung und der Verstärkung, bewerkstelligen.6. System for freely specifiable real-time control of animated graphics, video and / or audio sequences In a further exemplary embodiment of the present invention, a system for freely specifiable real-time control of animated graphics, video and / or audio sequences is provided. The system has a memory in which at least one predefined parameterized movement, surface, plan and / or lighting pattern is stored as a reference pattern in order to generate and / or influence animated graphics, video and / or audio sequences in real time. The system also has an arithmetic unit for evaluating control signals of different degrees of freedom from an input device as parameter values for generating and / or influencing animated graphics, video and / or audio sequences using at least one stored reference pattern. In addition, an adjustment unit is also provided in order to enable a freely selectable assignment of control signals of one degree of freedom to a specific reference pattern. This setting unit can optionally allow time derivatives of the control signals to be assigned to a specific reference pattern. Furthermore, it can achieve a freely selectable setting of coupling parameters of the assignment, such as, for example, the temporal damping and the amplification.
Die zugrunde liegende Erfindung ist, wie ein auf diesem Ge- biet tätiger Durchschnittsfachmann leicht erkennen kann, nicht nur auf die oben beschriebenen Ausführungsbeispiele beschränkt. Über die darin offenbarten Merkmale hinaus sind zahlreiche Modifikationen und Variationen möglich, ohne sub- stanziell von dem Anwendungsbereich der vorliegenden Erfin- düng abzuweichen, wie in den Patentansprüchen offenbart ist.As an average person skilled in the art can readily recognize, the underlying invention is not only limited to the exemplary embodiments described above. In addition to the features disclosed therein, numerous modifications and variations are possible without substantially deviating from the scope of the present invention, as disclosed in the patent claims.
KURZBESCHREIBUNG DER ZEICHNUNGENBRIEF DESCRIPTION OF THE DRAWINGS
Weitere Eigenschaften, Merkmale, Vorteile und Zweckmäßigkei- ten der zugrunde liegenden Erfindung resultieren aus den un- tergeordneten abhängigen Patentansprüchen sowie aus der folgenden Beschreibung der bevorzugten Äusführungsbeispiele der Erfindung, welche in den folgenden Zeichnungen abgebildet sind. Hierin zeigen:Further properties, features, advantages and expediencies of the underlying invention result from the dependent dependent patent claims and from the following description of the preferred exemplary embodiments of the invention, which are illustrated in the following drawings. Show here:
->->
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ührungs.beispiel der zugrunde liegenden Erfindung,FIG. 1 shows a simplified block diagram to illustrate the input and output signals of the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences according to the preferred embodiment. Example of the underlying invention,
FIG. 2 eine detailliertes Blockdiagramm zur Veranschaulichung der Komponenten sowie der Ein- und Ausgabesi- gnale der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen,FIG. 2 shows a detailed block diagram to illustrate the components and the input and output signals of the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences,
FIG. 3 ein Ablaufdiagramm zur Veranschaulichung der von der frei spezifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen durchgeführten Aktionen,FIG. 3 shows a flowchart to illustrate the actions performed by the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences,
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önnenFIG. 4 shows a block diagram to illustrate the control of individual or several acoustic parameters of digitized sound patterns by a system, consisting of a computer, the control unit 401 of which is conductively connected to at least one electronic musical instrument 402 via a MIDI interface and a 3D input device 104 for the input of parameterized ones Control signals for real-time motion control of virtual objects that can be displayed on a screen
undand
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.FIG. 5 shows a block diagram to illustrate the control of individual or several acoustic parameters of digitized sound patterns by a system, consisting of a computer which has an electronic tone generator 502 and a sound card 510, and a 3D input device 104 for input of parameterized control signals for the Real-time motion control of virtual objects that can be displayed on a screen.
DETAILLIERTE BESCHREIBUNG DER ERFINDUNGDETAILED DESCRIPTION OF THE INVENTION
Im Folgenden werden die Funktionen der in einem ersten Aus- führungsbeispiel der vorliegenden Erfindung enthaltenen Baugruppen, wie in den Figuren 1 bis 5 abgebildet, näher beschrieben.The functions of the assemblies contained in a first exemplary embodiment of the present invention, as shown in FIGS. 1 to 5, are described in more detail below.
Bezugnehmend auf Figur 1, soll die vorliegende Erfindung zu- nä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- 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 z bezeichnet werden, sowie drei rotatorische Freiheitsgrade, die im Folgenden als φκ, φy und φz bezeichnet werden. Dabei bezeichnen die Variablen x, y und z die orthogonalen Achsen eines dreidimensionalen kartesischen Koordinatensystems. Dieses lässt sich mathematisch als dreidimensionaler Vektorraum V beschreiben, der durch eine Orthonormalbasis, bestehend aus den orthonor alen Einheitsvektoren ex , ey und e2 , repräsentiert wird. Werden diese Variablen in Vektorschreibweise zusammen- gefasst, so ergeben sich zu jedem diskreten Zeitpunkt n (nach Weglassen der Einheiten) :With reference to FIG. 1, the present invention will first be explained schematically. The human-machine interface is represented by the input device 104. In particular, this is a so-called 3D input device, which can generate control signals 116 for six degrees of freedom, which are independent of one another, if it is manipulated accordingly by a user. These degrees of freedom include, for example, three translational degrees of freedom, which are referred to below as x, y and z, and three rotational degrees of freedom, which are referred to below as φ κ , φ y and φ z . The variables x, y and z denote the orthogonal axes of a three-dimensional Cartesian coordinate system. This leaves describe themselves mathematically as a three-dimensional vector space V, which is represented by an orthonormal basis consisting of the orthonoreal unit vectors e x , e y and e 2 . If these variables are summarized in vector notation, then at each discrete point in time n (after omitting the units) results:
der Ortsvektor x (n) := [x (n) , y (n) , z (n) ] τ e <-?°3 und der Drehrichtungsvektor φ (n) := [ φx (n) , φ (n) , φz (n) ] τ e *->° 3.the location vector x (n): = [x (n), y (n), z (n)] τ e <-? ° 3 and the direction of rotation vector φ (n): = [φ x (n), φ (n ), φ z (n)] τ e * -> ° 3 .
Der transformierte Ortsvektor xτ(x,Δx), der sich nach der Translation eines Punktobjekts P mit dem Ortsvektor x um die Wegdifferenzen Δx, Δy und Δz in Richtung der jeweiligen Achsen x, y bzw. z ergibt, kann in diesem Vektorraum V auf ein- fache Weise durch Addition des Ortsvektors x und einer Linearkombination der orthonormalen Einheitsvektoren ex , ey und ez ausgedrückt werden:The transformed location vector x τ (x, Δx), which results after the translation of a point object P with the location vector x by the path differences Δx, Δy and Δz in the direction of the respective axes x, y and z, respectively, in this vector space V are simply expressed by adding the location vector x and a linear combination of the orthonormal unit vectors e x , e y and e z :
xτ ( x,Δx ) := x + Δx mit Δx := Δx-ex + Δy-ey + Δz-e. V Δx,Δy,Δz e «5>».x τ (x, Δx): = x + Δx with Δx: = Δx-e x + Δy-e y + Δz-e. V Δx, Δy, Δz e « 5>».
Die Variablen φκ, φy und φz bezeichnen die Drehrichtung virtueller Objekte um die x-, y- bzw. z-Achse dieses Koordinatensystems. Der transformierte Ortsvektor xR (x,Δφ), der sich nach der Rotation eines Punktobjekts P mit dem Ortsvektor x um die Drehwinkel Δφx, Aφγ bzw. Δφz ergibt, kann in diesem Vektorraum V wie folgt ausgedrückt werden:The variables φ κ , φ y and φ z denote the direction of rotation of virtual objects around the x, y and z axes of this coordinate system. The transformed location vector x R (x, Δφ), which results after the rotation of a point object P with the location vector x by the angles of rotation Δφ x , Aφ γ and Δφ z , can be expressed in this vector space V as follows:
x.R ( x , Δφx, Aφyfz) := Rz(Δφz) Ry(Δφy) Rχ(Δφχ) • x mit Δφ := [Δφ*, Δφz] τ V Aφy., Aφyr Δφz e ^», wobei die Drehmatrizen Rx(Δφx), Ry(Δφy) und Rz(Δφz) wie folgt definiert sind:x. R (x, Δφ x , Aφ yfz ): = R z (Δφ z ) R y (Δφ y ) R χ (Δφ χ ) • x with Δφ: = [Δφ * , Δφ z ] τ V Aφ y ., Aφ yr Δφ z e ^ », where the rotation matrices R x (Δφ x ), R y (Δφ y ) and R z (Δφ z ) are defined as follows:
R*(Δφ R * (Δφ
cos(Δφy) 0 Sliln(Δφy)cos (Δφ y ) 0 Sliln (Δφ y )
Ry(Δφy) 1 0 undR y (Δφ y ) 1 0 and
-sin(Δφy) 0 cos(Δφy y)'J-sin (Δφ y ) 0 cos (Δφ y y ) 'J
'cos(Δφz) -sin(Δφ2) 0 ' cos (Δφ z ) -sin (Δφ 2 ) 0
Rz(Δφ2) sin(Δφz) cos(Δφz) 0R z (Δφ 2 ) sin (Δφ z ) cos (Δφ z ) 0
00
Selbstverständlich können z.B. mit Hilfe von Tastensteuerun¬ gen oder Schaltern verhältnismäßig einfach noch weitere Frei- heitsgrade 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. z bzw. die drei rotato- rischen Freiheitsgrade φx, φy bzw. φz jeweils analoge Ansteuersignale ergeben können, die dann beispielsweise bei byteweiser Kodierung in 28 = 256 Stufen als digitale Signale zur weiteren Verarbeitung zur Verfügung stehen.Of course, gen using Tastensteuerun ¬ or switches relatively simple yet more free-added degrees of freedom, for example. It should be noted that switches or keys generally generate binary control signals (on / off), whereas the three translatory degrees of freedom x, y or z or the three rotational degrees of freedom φ x , φ y or φ mentioned above z can each result in analog control signals which are then available, for example with byte-wise coding in 2 8 = 256 stages, as digital signals for further processing.
Da die drei translatorischen und die drei rotatorischen Frei¬ heitsgrade x, y, z, φκ, φy bzw. φz 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 Audiosequen- zen ausgewertet werden. Insbesondere ist es also möglich, zu jedem diskreten Zeitpunkt n (nach Weglassen der Einheiten) die dreidimensionalen Vektoren fürSince the translational three, and the three rotational free ¬ degrees of freedom x, y, z, φ κ, φ y, and z as "analog signals" φ or in 256 steps quantized digital signals are to be considered, the present invention may in accordance with the temporal change of these control signals 116 by the freely specifiable real-time control 102 for animated graphics, video and / or audio sequences, which is then described in more detail below. zen can be evaluated. In particular, it is therefore possible to use the three-dimensional vectors for at any discrete point in time n (after omitting the units)
die Geschwindigkeit v (n) := [ x (n) , y (n) , z (n) ] τ e «s*»3, die Beschleunigung a (n) := [ x (n) , y (n) , z (n) ] τ e \-*>3, die Winkelgeschwindigkeit ώ (n) := [ φx (n) , φy (n) , φz (n) ] τ e' the speed v (n): = [x (n), y (n), z (n)] τ e «s *» 3 , the acceleration a (n): = [x (n), y (n) , z (n)] τ e \ - *> 3 , the angular velocity ώ (n): = [φ x (n), φ y (n), φ z (n)] τ e '
sowie die Winkelbeschleunigung (n) := [ φx (n) , φy (n) , φz (n) ] τ e ss*>3 and the angular acceleration (n): = [φ x (n), φ y (n), φ z (n)] τ e ss *> 3
der Freiheitsgrade x, y, z, φx r φy bzw. φz 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.the degrees of freedom x, y, z, φ xr φ y and φ z, respectively, and, if necessary, to use them as additional degrees of freedom, regardless of the absolute value of the respective control signals 116. The input device 104 does not require any further sensors (for example speed or acceleration sensors).
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- Ausgabesignale 120 aus, mit Hilfe derer eine 3D-Animation 114 beispielsweise auf dem Bildschirm eines Computer erzeugt werden kann. Diese 3D-Animation 114 kann folgendes umfassen:Thus, while the control signals 116 are fed on the input side from the 3D input device 104 to the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences according to the present invention, the latter outputs animation output signals 120 depending on these control signals 116 With the help of which a 3D animation 114 can be generated, for example, on the screen of a computer. This 3D animation 114 may include:
- ansteuerbare Bewegungsmuster 106 wenigstens eines bewegbaren Gelenkkörpers, - ansteuerbare Oberflächenmuster 108 des Gelenkkörpers und/oder seiner Umgebung,controllable movement patterns 106 of at least one movable joint body, controllable surface patterns 108 of the joint body and / or its surroundings,
- ansteuerbare Klangmuster 110 und/oder - ansteuerbare Beleuchtungsmuster 112 für den Gelenkkörper und/oder seine Umgebung.controllable sound patterns 110 and / or controllable lighting patterns 112 for the joint body and / or its surroundings.
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.It should be noted that the generation of this SD animation 114 is carried out in real time with respect to the control signals 116. In contrast to some known examples according to the prior art, it is therefore normally not necessary to save sound or image sequences in advance in order to then trigger them at the push of a button.
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 Beleuchtungs uster 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.A major advantage of the present invention is that for a newly to be generated 3D animation 114 does not have to be done a completely new programming, as is the case in the prior art '.. Rather stored motion patterns 106, surface pattern 108, Sound patterns 110 and / or lighting patterns 112 are connected in an interface-like manner to the freely specifiable real-time control 102 for animated graphics, video and / or audio sequences. By exchanging or re-specifying at least one of the named patterns, a completely new 3D animation 114 can be generated in a simple manner. The programming effort for creating a new 3D animation 114 is thus significantly reduced.
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 liegen- den 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 ge- stellt 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 Eingabe- gerät ebenfalls geeignet, wobei indessen das 3D-Eingabegerät 104 den großen Vorteil aufweist, dass die Eingabe von Ansteu- .e.rsignalen 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.Since the brain can process extremely complex amounts of information per unit of time in various animal species and in humans in the course of evolution with regard to the spatial perception and processing of movement patterns, in a preferred exemplary embodiment of the underlying invention, these learned and inherited skills are easily accessed In that known movement patterns are made available in a modular manner via a standardized interface of the freely specifiable real-time control 102 for animated graphics, video and / or audio sequences. It should be noted that the 3D input device 104 represents only one example of an input device for generating control signals 116. In principle, any other type of input device is also suitable, although the 3D input device 104 has the great advantage that the input of control signals 116 of different degrees of freedom can take place in a particularly intuitive manner. With regard to the specific embodiments of such 3D input devices 104, reference is made to the prior art cited in the introduction to the description. Such products are commercially available from LogiCad3d, for example.
Bezugnehmend auf Figur 2 soll .nunmehr im Detail der Aufbau der erfindungsgemäßen frei spezifizierbaren Echtzeit-Steue- rüng 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-Steue- rung 102, nämlich die Ansteuersignale 116 (x, y, z, φκ, φy bzw. φz ) von dem 3D-Eingabegerät 104 und die Animations-Aus- gabedaten 120.Referring now to FIG. 2, the structure of the freely specifiable real-time control 102 according to the invention for animated graphics, video and / or audio sequences will now be explained in detail. The arrows 116 and 120 shaded in gray show the real-time input and output of signals from or to the freely definable real-time control 102, namely the control signals 116 (x, y, z, φ κ , φ y and φ z ) from the 3D input device 104 and the animation output data 120.
Wie aus Figur 2 ersichtlich, werden die Ansteuersignale 116 einem Freispezifizierungsmodul 202 zugeführt. Eine Funktion des Freispezifizierungsmoduls 202 ist es, aus den Absolutwerten der eingegebenen „Analogdaten" x, y, z, φx, φy bzw. φz die ersten zeitlichen Ableitungen (Geschwindigkeiten bzw. Winkel- ςjeschwindigkeiten) 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 Beeinflus- sung 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 Beein- flussung der Grafiken, Bild- bzw. Tonsequenzen zuordnen kann.As can be seen from FIG. 2, the control signals 116 are fed to a free specification module 202. One function of the free specification module 202 is to use the absolute values of the entered “analog data” x, y, z, φ x , φ y and φ z to derive the first time derivatives (velocities or angular velocities) or the second temporal derivatives ( Accelerations or angular accelerations) can be determined without the aid of an additional sensor (acceleration sensor), for example, the speed and the acceleration with respect to the “analog data” mentioned under the control signals 116. A second important function of the free specification module 202 is to control the control signals 116 of the various degrees of freedom for the components for generating and / or influencing the graphics, image or sound sequences, ie the motion generator 204, the surface generator 206, the acoustic generator 208 or the Lighting generator 210 to assign. For example, a mask can be provided for the user during the initialization of the real-time control 102 according to the invention for animated graphics, video and / or audio sequences, which enables the user to access the free specification module 202 in such a way that the user has a degree of freedom Control signals 116 can assign one of the above-mentioned components - for generating and / or influencing the graphics, image or sound sequences.
Darüber hinaus kann der Benutzer mit Hilfe dieses Freispezi- fizierungsmoduls 202 die Kopplungsparameter der Zuordnung von .Ansteuersignalen zu abgespeicherten Referenzmustern frei ein- stellen, 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 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ä p- fung 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. DieIn addition, with the help of this free specification module 202, the user can freely set the coupling parameters for the assignment of control signals to stored reference patterns, such as, for example, to carry out spectral filtering for damping or amplifying the signal components of audio signals in predeterminable frequency ranges. The adjustable coupling parameters determine the temporal coupling and the damping or amplification of the change in the corresponding reference pattern depending on the assigned control signal and thus the signal response behavior of the system. Depending on the specification by the user, the free specification module 202 has the effect that the coupling parameters of the assignment - such as the damping or amplification - are freely adjustable. If, for example, the coupling parameters are changed with regard to the movement pattern of a walking movement of the joint object, it is possible to switch continuously from a dynamic to a limping walking movement. According to the invention, different moods or emotions can also be expressed as a result Facial expressions of a depicted face. The
Bewegungsmuster können dabei wie folgt mit den Stimmungsmustern gekoppelt sein:Movement patterns can be linked to mood patterns as follows:
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.The user can therefore continuously select between the walking movement of a young athlete and that of an old man and, coupled with this, easily select different characters and / or moods.
Im Sinne einer höherwertigen Zuordnung ist es auch möglich, anstelle der Einstellung einzelner Kopplungsparameter ledig- lieh im Zuge der Spezifizierung den Charakter (jung/alt etc.) und/oder die Stimmung (lustig/traurig etc.) anzuwählen, wobei das Freispezifizierungsmodul 202 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 Kopplüngsparameter eines Musters wie auch mehrere Kopplungsparameter verschiedener Muster (Bewegung, Oberflä- ehe, Bild und/oder Ton) automatisch verändert werden. Somit können Choreographien erstellt werden, die eine Echtzeit-An- steuerung einer Charakter-Figur und des Hintergrunds verwen¬ den.In terms of a higher-value assignment, it is also possible to select the character (young / old etc.) and / or the mood (funny / sad etc.) instead of setting individual coupling parameters in the course of the specification, with the free specification module 202 then automatically sets the individual coupling parameters (e.g. for the walk, face, etc.). Instead of setting individual coupling parameters, this higher-value (linked) assignment thus enables the selection of a character and / or a mood. The choice of mood can influence different patterns, so that, for example, the The soundtrack, the scene lighting and the movement can be changed. Thus, an action by the user can automatically change several coupling parameters of one pattern as well as several coupling parameters of different patterns (movement, surface, image and / or sound). Thus, you can create choreographies that control real-time arrival of a character figure and background USAGE ¬.
Abhängig von der Spezifizierung durch den Benutzer ordnet das Freispezifizierungsmodul 202 die entsprechenden Ansteuersignale 116 wie folgt zu:Depending on the specification by the user, the free specification module 202 assigns the corresponding control signals 116 as follows:
- als parametrisierte Bewegungs-Ansteuersignale 212 einem Be- wegungsgenerator 204,a motion generator 204 as parameterized motion control signals 212,
- als parametrisierte Oberflächen-Ansteuersignale 214 einem Oberflächengenerator 206,as parameterized surface control signals 214 to a surface generator 206,
- als parametrisierte Akustik-Ansteuersignale 216 einem Akustikgenerator 208 und/oder - als parametrisierte Beleuchtungs-Ansteuersignale 218 einem Beleuchtungsgenerator 210.- as parameterized acoustic control signals 216 to an acoustic generator 208 and / or - as parameterized lighting control signals 218 to a lighting generator 210.
Der Bewegungsgenerator 204 verknüpft die ihm zugewiesenen Bewegungs-Ansteuersignale 212 mit wenigstens einem vordefinier- ten parametrisierten Bewegungsmuster 106 zur Erzeugung von Bewegungs-Animations-Ausgabesignale 220. Somit können also verschiedene Bewegungsmuster des virtuellen Gelenk-Ob ekts (z.B. Gehen in verschiedenen Richtungen, Bücken oder Springen etc.) in Echtzeit angesteuert werden.The motion generator 204 combines the motion control signals 212 assigned to it with at least one predefined parameterized motion pattern 106 for generating motion animation output signals 220. Thus, different motion patterns of the virtual joint object (eg walking in different directions, stooping or Jumping etc.) can be controlled in real time.
Der Oberflächengenerator 206 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 parametrisier- ten Oberflächenmuster 108 zur Erzeugung von Oberflächen-Aus- gabesignale 222. Somit kann beispielsweise eine Struktur-,The surface generator 206 links the surface control signals 214 assigned to it, the motion animation output signals 220 generated by the motion generator 204, and data from at least one predetermined parameterized surface pattern 108 for generating surface outputs. signals 222. Thus, for example, a structural,
Färb-, Farbsättigungs- bzw. Helligkeitsänderung bestimmter Flächen eines bewegten Objekts und/oder seiner Umgebung ein- geleitet werden.Changes in the color, saturation or brightness of certain surfaces of a moving object and / or its surroundings can be initiated.
Der Akustikgenerator 208 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 gespeicher¬ ten Klangmuster können beispielsweise parametrisierte digitale Audiodateien sein.The acoustic generator 208 links the acoustic control signals 216 assigned to it with at least one parameterized, predefined sound pattern 110. The product of this connection is the sound output signals 224, which represent part of the animation output signals 120. The gespeicher ¬ th sound patterns may for example be parameterized digital audio files.
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 Ob¬ jekt und/oder seine Umgebung betreffen.Similarly, the illumination generator 210 linked to its assigned illumination control signals 218 with at least one pre-defined parameterized illumination pattern 112 to produce illumination output signals 226. The illumination pattern 112 may in this case a virtual Whether ¬ ject and / or affect its surroundings.
Wie bereits ausgeführt sind die vordefinierten Bewegungsmuster 106, Oberflächenmuster 108, Klangmuster 110 und Beleuchtungsmuster 112 jeweils parametrisiert, so dass die entsprechenden zugeordneten Ansteuersignale durch den Bewegungsgene- rator 204, den Oberflächengenerator 206, 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 aus¬ zuführen, wobei sich die Echtzeit-Ansteuerung der entspre- chenden Muster in der entsprechenden Veränderung der erzeug¬ ten 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 desAs already stated, the predefined movement patterns 106, surface patterns 108, sound patterns 110 and lighting patterns 112 are each parameterized, so that the corresponding assigned control signals can be used as parameter values by the movement generator 204, the surface generator 206, the acoustic generator 208 or the lighting generator 210 , perform a real-time control of the corresponding pattern depending on the control signals 116 from ¬, said real-time control of the corresponding pattern in the corresponding change in the erzeug ¬ th animation data 220, 222, 224 and 226 is reflected, the total of the animation - Output signals 120 can be summarized. The user can by manipulating the
Eingabegeräts 104 und der entsprechenden Zuordnung durch das Freispezifizierungsmodul 202 (die durch den Benutzer selbst oder vorab durch den Hersteller eingestellt wurde) in Echt- zeit 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,Input device 104 and the corresponding assignment by the free specification module 202 (which was set by the user himself or in advance by the manufacturer) in real time the movement patterns 106, the surface patterns (geometries, textures, etc.) 108, the sound patterns 110 and / or control the lighting pattern 112. On the one hand, it can trigger predefined patterns, for which purpose a switch on the input device 104 can be used, for example. On the other hand, it can use the "analog drive signals" x, y, z,
(|)x, φy bzw. φ2 eine Echtzeit-Steuerung der genannten Muster ausführen.(|) x , φ y or φ 2 perform real-time control of the above-mentioned patterns.
Die Funktion der Generatoren 204, 206, 208 und 210 soll dabei anhand des Bewegungsgenerators 204 im Detail erläutert werden:The function of the generators 204, 206, 208 and 210 is to be explained in detail using the motion generator 204:
Es wird vorausgesetzt, dass im Zuge der Animation ein Gelenkkörper in Echtzeit angesteuert werden soll. Der Bewegungsge- nerator 204 berechnet also in diesem Fall laufend abhängig von den Bewegungs-Ansteuersignalen 212 die neue Position und Orientierung der Gelenke des Gelenkkörpers.It is assumed that a joint body should be controlled in real time during the animation. In this case, the movement generator 204 continuously calculates the new position and orientation of the joints of the joint body depending on the movement control signals 212.
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 betrachte- ten virtuellen Gelenk-Objekts kann beispielsweise folgender String S \ definiert werden:A movement pattern 106 is thus defined, for example, as follows: First, skeletal data are defined that describe the type and position of the joints of the joint body. In addition to the position of the joints (position), the type of joints (which can be described by the type and number of degrees of freedom) is also defined. For each joint j of the J joints of a virtual joint object under consideration, the following string S \ can be defined, for example:
S := {Namβj, Position-}, Freiheitsgrade-j,S: = {namβj, position- } , degrees of freedom-j,
Maximale_Amplitudej, Dämpfungj, ...} für 1 < j < JMaximum_Amplitudej, Attenuationj, ...} for 1 <j <J
Ein Bewegungsablauf besteht also dann aus einer Liste oder einer Funktion, die festlegt, welches der definierten Gelenke sich abhangig 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.A movement sequence then consists of a list or a function that determines which of the defined joints moves when and how, depending on the parameterized control signals. A sequence of movements can thus consist, for example, of a list of the joints to be “processed.” For each cycle, the list or a function is used to calculate which new position and / or orientation of the joints results from the individual contributions of the various joints depending on the control signals.
Zu einem Zeitpunkt n berechnet sich also die Position eines Gelenks, definiert durch die Koordinaten x, y, z, sowie dessen Orientierung, definiert durch die Winkelkoordinaten φx ι φy bzw. φ~, wie folgt:At a point in time n, the position of a joint, defined by the coordinates x, y, z, and its orientation, defined by the angular coordinates φ x ι φ y or φ ~, are calculated as follows:
Diese Gleichung (1) wird also für jedes in den Skelettdaten definierte Gelenk berechnet. Die neue Position und Orientierung eines Gelenks zum Zeitpunkt n berechnet sich somit aus der Position im vorherigen Zyklus n-1 zuzüglich der neuen, von den Ansteuersignalen abhängigen BeiträgenThis equation (1) is therefore calculated for each joint defined in the skeletal data. The new position and orientation of a joint at time n is thus calculated from the position in the previous cycle n-1 plus the new contributions which are dependent on the control signals
Δx-, Δy_, Δz-, Δφx , Δφy und ΔφZ/.. Jedes Gelenk j liefert somit einen Änderungsbeitrag für dieΔx-, Δy_, Δz-, Δφ x , Δφ y and Δφ Z / .. Each joint j thus makes a contribution to the change
Position und Orientierung jedes Gelenks, sich selbst eingeschlossen.Position and orientation of each joint, including itself.
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:The contributions of each joint j to the displacement of the position or orientation of every other joint and the same joint are calculated using the following formula:
[ΔXJ , Δy-j , ΔZJ , ΔφKι i , Aφy, 3 , Aφ ] τ := fj (x,y, z , φx l φyr φz, x, y, z, φx , φy , φz , x, y , z, φx , φy , φ2 ) (2) mit fj: <-»18 → ^6 V j s { 1, 2, 3, ... , J} .[ΔXJ, Δy- j , ΔZ J , Δφ Kι i , Aφ y , 3 , Aφ ] τ : = fj (x, y, z, φ xl φ yr φ z , x, y, z, φ x , φ y , φ z , x, y, z, φ x , φ y , φ 2 ) (2) with f j : <- » 18 → ^ 6 V js {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.The vector-valued function fj represents a representation, such as a certain movement, e.g. the course of a human being can be reproduced in a standardized manner.
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- ziehen sich dabei auf einen Einstellungs- und Zuweisungsvor- ςrang 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, Ober¬ flächenmustern 108, Klangmustern 110 und/oder Beleuchtungsmustern 112) zuweisen. In einem Schritt 301c können dann die Kopplungsparameter zwischen den Ansteuersignalen und den tat- sä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 302 werden dann in einem Schritt 304 die Ansteuersignale von dem SD-Eingabegerät 104 an die Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen weitergegeben. In einem Schritt 306 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,3, the sequence according to the present invention will finally be explained again. Steps 301a, 301b and 301c relate to a setting and assignment priority in the free specification module 202. This process can either be defined by the user or else in advance. After starting in step 301 so the user and / or a programmer can by releasing specification module 202, the individual control signals 116 of the various degrees of freedom different patterns (movement patterns 106, Upper ¬ surface pattern 108, sound patterns 110 and / or illumination patterns 112) to assign. In a step 301c, the coupling parameters between the control signals and the changes in the corresponding patterns that are actually carried out in real time can be set. These coupling parameters can relate, for example, to the attenuation and the amplification of sound patterns. When a real-time animation starts in step 302, the control signals are then forwarded from the SD input device 104 to the real-time controller 102 for animated graphics, video and / or audio sequences in a step 304. The control signals are then evaluated in a step 306, the first and second time derivatives of the “analog control signals” being determined, for example. Finally, in a step 308, the control signals of the different degrees of freedom are assigned to the movement patterns 106, surface patterns 108, already mentioned above.
Klangmustern 110 und/oder Beleuchtungsmustern 112 ausgeführt.Sound patterns 110 and / or lighting patterns 112 executed.
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.With regard to the lighting pattern 112, it should be noted that both the lighting situation for an animated articulated object itself and the lighting of the background or different scenes can be changed in real time by corresponding assignment and input of corresponding control signals 116.
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:Referring to the exemplary embodiment of the underlying invention shown schematically in FIG. 4, a method or a system can be provided for controlling individual or several acoustic parameters of digitized sound patterns 410, which uses the following devices:
- einen Computer, dessen Steuereinheit 401 mit mindestens einem elektronischen Musikinstrument 402 über eine MIDI- Schnittstelle 404a+b leitend verbunden ist unda computer, the control unit 401 of which is conductively connected to at least one electronic musical instrument 402 via a MIDI interface 404a + b and
- 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 402 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 .an input device 104 for input of parameterized control signals 116 for real-time motion control of virtual objects that can be displayed on a screen. The digitized sound patterns 410 can be digitally stored in the memory of at least one electronic musical instrument 402 in accordance with the MIDI standard and generated or played back on at least one electronic musical instrument 402 in accordance with the MIDI standard. Individual or more of these acoustic parameters can be generated or influenced according to the invention by controlling the virtual objects by moving the input device 104 in real time.
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 verwen¬ det :As shown in Figure 5, alternatively, the underlying ^ invention, a method and a system of individual or for controlling a plurality of acoustic parameters of digitized sound pattern 512 according to a variation of this embodiment can be provided which det the following devices USAGE ¬:
- einen Computer, dessen Steuereinheit 501 mit mindestens einer Sound-Karte 510 sowie mit mindestens einem Tongenerator 502 verbunden ist unda computer, the control unit 501 of which is connected to at least one sound card 510 and to at least one tone generator 502, and
- ein Eingabegerät 104 zur Eingabe von parametrisierten Ansteuersignalen 116 für die Echtzeit-Bewegungssteuerung virtueller Objekte, die auf einem Bildschirm dargestellt wer- den können.an input device 104 for input of parameterized control signals 116 for real-time motion control of virtual objects that can be displayed on a screen.
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 des- selben Computers generiert und abgespielt werden. Einzelne oder mehrere akustische Parameter der digital gespeicherten Klangmuster 512 können dabei erfindungsgemäß mittels Steue¬ rung 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,The digitized sound patterns 512 can be stored digitally in the memory of at least one sound card 510 of the computer and can be generated and played on at least one tone generator 502 of the same computer. One or more acoustic parameters of the digitally stored sound patterns 512 can According to the invention by means of the virtual objects Steue ¬ tion are generated by moving the input device 104 in real-time or influenced. The controllable virtual objects, which are controlled to generate or influence individual or more acoustic parameters of the digitally stored sound patterns 410 or 512 by moving the input device 104, can be, for example, the control elements, buttons,
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.Act switches, knobs and / or sliders of a virtual mixer, with the help of which, for example, individual frequency ranges of the overtone spectrum of a stored, digitized sound pattern 410 or 512 can be specifically attenuated or amplified.
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, simul- tan parametrisierte Ansteuersignale 116 von Bewegungen in wenigstens sechs unabhängigen Freiheitsgraden in Echtzeit zu verarbeiten.The input device 104 can be, for example, a wireless control medium that can be moved in three dimensions (“3D mouse”) and which is capable of simultaneously parameterized control signals 116 of movements in at least six independent degrees of freedom to process in real time.
Bei den gesteuerten akustischen Parametern eines bestimmten digitalisierten Klangmusters 410 bzw. 512 kann es sich beispielsweise um Tonhöhen, Noten- bzw. Pausenwerte, Lautstärken, Tempi, Artikulationsanweisungen, Klangfarben, Pedal-, Vibrato-, Chorus-, Hall-, Oberton- und/oder andere Spezialef- fekte handeln.The controlled acoustic parameters of a specific digitized sound pattern 410 or 512 can be, for example, pitches, note or pause values, volumes, tempos, articulation instructions, timbres, pedal, vibrato, chorus, reverb, overtone and / or other special effects.
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 Ableitun- gen der parametrisierten Ansteuersignale 116 einem oder mehreren Parametern eines bestimmten digitalisierten Klangmusters 410 bzw. 512 zugeordnet werden. Die Kopplungsparameter der Zuordnung von parametrisierten Ansteuersignalen ilβ können ebenfalls frei spezifiziert werden.Parameterized control signals 116 of movements of the input device 104 can be entered in three translational and three rotational degrees of freedom. In addition, it can be provided according to the invention that time derivatives of the parameterized control signals 116 can also be determined and processed. The assignment of parameterized control signals 116 of one degree of freedom to one or more parameters of a specific digitized sound pattern 410 or 512 can be freely specified according to the invention. Optionally, the time derivations can be assigned to one or more parameters of a specific digitized sound pattern 410 or 512 in accordance with the parameterized control signals 116. The coupling parameters of the assignment of parameterized control signals ilβ can also be freely specified.
Die Bedeutung der mit Bezugszeichen versehenen Symbole in den Figuren 1 bis 5 kann der beigefügten Bezugszeichenliste entnommen werden. The meaning of the symbols provided with reference symbols in FIGS. 1 to 5 can be found in the attached list of reference symbols.
BezugszeichenlisteLIST OF REFERENCE NUMBERS
Nr, SymbolNo, symbol
100 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 Erfindung100 simplified block diagram to illustrate the input and output signals of the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences according to the preferred exemplary embodiment of the underlying invention
102 frei spezifizierbare Echtzeit-Steuerung von animierten Grafiken, Video- und/oder Audiosequenzen102 freely definable real-time control of animated graphics, video and / or audio sequences
10' 3D-Eingabegerät zur. Eingabe der Ansteuersignale 11610 '3D input device for . Input of the control signals 116
106 parametrisierte Bewegungsmuster für Gelenk-Ob j ekte106 parameterized movement patterns for joint objects
108 parametrisierte Oberflächenmuster (Geometrien, Texturen) für Gelenk-Objekte108 parameterized surface patterns (geometries, textures) for joint objects
110 parametrisierte Kla gmuster110 parameterized wedge patterns
112 parametrisierte Beleuchtungsmuster für Gelenk-Objekte und den Hintergrund virtueller Szenen ' 112 parameterized lighting patterns for articulated objects and the background of virtual scenes '
114 3D-Animation, angezeigt aμ-f Computer-Bildschirm114 3D animation, displayed aμ-f computer screen
116 Ansteuersignale vom 3D-Eingabegerät 104 für die frei spezifizierbare Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen116 control signals from the 3D input device 104 for the freely specifiable real-time control 102 for animated graphics, video and / or audio sequences
118 Ü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 Audiosequenzen118 Transfer of the parameterized movement patterns 106, surface patterns 108, sound patterns 110 and / or lighting patterns 112 as reference patterns to the corresponding generators 204, 206, 208 and 210 in the freely specifiable real-time controller 102 for animated graphics, video and / or audio sequences
120 Animations-Ausgabesignale von der Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen für die 3D-Animation 114120 animation output signals from real-time controller 102 for animated graphics, video and / or audio sequences for 3D animation 114
120a Animations-Ausgabesignale von der Steuereinheit 401 eines Computers für die 3D-Animation 114120a animation output signals from the control unit 401 of a computer for the 3D animation 114
120b Status-Signale von der 3D-Animation 114 für die Steuerein¬ heit 401 des Computers120b status signals from the 3D animation 114 for the Steuerein ¬ ness 401 computer
200 detailliertes Blockdiagramm zur Veranschaulichung der Komponenten sowie der Ein- und Ausgabesignale der frei spezi¬ fizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen200 detailed block diagram illustrating the components as well as the input and output signals of the free specific ¬ fizierbaren real-time control 102 for animated graphics, video and / or audio sequences
202 Freispezifizierungsmodul zur Zuordnung der Ansteuersignale bzw. deren zeitlicher Ableitungen als Parameterwerte für die parametrisierten Bewegungsmuster 106, Oberflächenmu- ster 108, Klangmuster 110 bzw. Beleuchtungsmuster 112202 free specification module for assigning the control signals or their time derivatives as parameter values for the parameterized movement pattern 106, surface pattern 108, sound pattern 110 or lighting pattern 112
204 Bewegungsgenerator zur Berechnung der Skelett-Anderungsda- ten von Gelenk-Objekten auf Grundlage der Ansteuersignale 116 als Parameterwerte und wenigstens je eines parametri- sierten Bewegungsmusters 106, wobei die Skelett-Änderungs- daten translatorische und/oder rotatorische Änderungen der Lage bzw. Orientierung der Gelenk-Objekte wiedergeben204 motion generator for calculating the skeleton change data of joint objects on the basis of the control signals 116 as parameter values and at least one parameterized movement pattern 106 each, the skeleton change data translational and / or rotational changes in the position or orientation of the Play joint objects
206 Oberflächengenerator zur Berechnung der Oberfläche virtu- Nr . Symbol206 surface generator for calculating the surface virtually No . symbol
eller Gelenk-Objekte auf Grundlage ihrer Skelett-Ände- rungsdaten und wenigstens je eines Oberflächenmusters 108eller joint objects based on their skeletal change data and at least one surface pattern 108 each
208 Akustikgenerator zur Erzeugung von Tonsequenzen, ausgehend von parametrisierten Klangmustern 110208 Acoustic generator for generating sound sequences, based on parameterized sound patterns 110
210 Beleuchtungsgenerator zur Erzeugung von Beleuchtungs-Aus- gabesignale, ausgehend von parametrisierten Beleuchtungsmustern 112210 lighting generator for generating lighting output signals, starting from parameterized lighting patterns 112
!12 Bewegungs-Ansteuersignale vom Freispezifizierungsmodul 202 zum Bewegungsgenerator 204! 12 motion control signals from free specification module 202 to motion generator 204
214 Oberflächen-Ansteuersignale vom Freispezifizierungsmodul 202 zum Oberflächengenerator 206214 surface drive signals from free specification module 202 to surface generator 206
216 Klang-Ansteuersignale vom Freispezifizierungsmodul 202 für den Akustikgenerator 208216 sound drive signals from the free specification module 202 for the acoustic generator 208
218 Beleuchtungs-Ansteuersignale vom Freispezifizierungsmodul 202 zum Beleuchtungsgenerator 210218 lighting control signals from the free specification module 202 to the lighting generator 210
220 Bewegungs-Animations-Ausgabesignale vom Bewegungsgenerator 204 zum Oberflächengenerator 206220 motion animation output signals from motion generator 204 to surface generator 206
222 Oberflächen-Ausgabesignale- vom Oberflächengenerator 206222 surface output signals - from surface generator 206
224 Klang-Ausgabesignale vom Akustikgenerator 208 als Teil der Animations-Ausgabesignale 120224 sound output signals from the acoustic generator 208 as part of the animation output signals 120
226 Beleuchtungs-Ausgabesignale vom Beleuchtungsgenerator 210226 lighting output signals from lighting generator 210
300 Ablaufdiagramm zur Veranschaulichung der von der frei spe¬ zifizierbaren Echtzeit-Steuerung 102 für animierte Grafiken, Video- und/oder Audiosequenzen durchgeführten Aktionen300 flowchart illustrating the zifizierbaren from the free spe ¬ real-time control 102 performed for animated graphics, video and / or audio sequences Actions
301a Start der Setup-Phase [= Vorbereitung einer Echtzeit-Ani- ation)301a Start of the setup phase [= preparation of a real-time animation)
301b Voreinstellungen, Initialisierungen und Zuweisungen für das Freispezifizierungsmodul 202301b presets, initializations and assignments for the free specification module 202
301c Parameter-Voreinstellung (z.B. Dämpfung bzw. Verstärkung)301c parameter presetting (e.g. damping or amplification)
301d Ende der Setup-Phase301d End of the setup phase
302 Start der Steuer-Phase Start einer Echtzeit-Animation)302 start of the control phase start of a real-time animation)
104 Eingabe der Ansteuersignale104 Input of the control signals
106 Auswertung der Ansteuersignale106 Evaluation of the control signals
Zuweisung der AnsteuersignaleAllocation of the control signals
310 Erzeugung von Bewegungsdaten bzw. Beeinflussung von Bewegungsmustern 106 mit Hilfe der Animations-Ausgabesignale 120310 Generation of movement data or influencing of movement patterns 106 with the aid of the animation output signals 120
312 Erzeugung von Oberflächendaten bzw. Beeinflussung von Oberflächenmustern 108 mit Hilfe der Animations-Ausgabesi¬ gnale 120312 generate surface data or influencing of surface patterns 108 using the animation Ausgabesi ¬ gnale 120
314 Erzeugung von Klangdaten bzw. Beeinflussung von Klangmu¬ stern 110 mit Hilfe der Animations-Ausgabesignale 120314 generation of sound data or influencing of Klangmu ¬ star 110 by means of the animation output signals 120
Erzeugung von Beleuchtungsdaten bzw. Beeinflussung von Be¬ leuchtungsmustern 112 mit Hilfe der Animations-Ausgabesi¬ gnale 120Generating illumination data or influencing of Be ¬ leuchtungsmustern 112 using the animation Ausgabesi ¬ gnale 120
400 Blockdiagramm zur Veranschaulichung der Steuerung einzel¬ ner oder mehrerer akustischer Parameter digitalisierter Klangmuster durch ein System, bestehend aus einem Compu- Nr . Symbol ter, dessen Steuereinheit 401 mit mindestens einem elektronischen 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önnen400 individual block diagram illustrating the control ¬ ner or more acoustic parameters of digitized sound pattern by a system consisting of a computer- No . Symbol ter, the control unit 401 of which is conductively connected to at least one electronic musical instrument 402 via a MIDI interface and a 3D input device 104 for input of parameterized control signals for real-time motion control of virtual objects that can be displayed on a screen
401 Steuereinheit eines Computers401 control unit of a computer
402 Masterkeyboard bzw. Synthesizer nach dem MIDI-Standard (hier: Keyboard mit 73 Tasten, d.h. mit einem Ambitus von sechs Oktaven)402 master keyboard or synthesizer according to the MIDI standard (here: keyboard with 73 keys, i.e. with an ambitus of six octaves)
404a MIDI/IN-Anschluss (Eingangsbuchse) des Masterkeyboards bzw. Synthesizers 402404a MIDI / IN connector (input socket) of the master keyboard or synthesizer 402
404b MIDI/OUT-Anschluss (Ausgangsbuchse) des Masterkeyboards bzw. Synthesizers 402404b MIDI / OUT connector (output socket) of the master keyboard or synthesizer 402
406 Lautsprecheranschlussbuchse des Masterkeyboards bzw. Synthesizers 402406 Loudspeaker connection socket of the master keyboard or synthesizer 402
40! Lautsprecher40! speaker
410 Speicher des Masterkeyboards bzw. Synthesizers 402, in dem eine Datenbank mit digitalisierten Klangmustern gespeichert ist410 memory of the master keyboard or synthesizer 402, in which a database with digitized sound patterns is stored
412ä MIDI/IN-Signal von der Steuereinheit 401 des Computers zum Masterkeyboard bzw. Synthesizer 402412a MIDI / IN signal from the control unit 401 of the computer to the master keyboard or synthesizer 402
412b MIDI/OUT-Signal vom Masterkeyboard bzw. Synthesizer 402 zur Steuereinheit 401 des Computers412b MIDI / OUT signal from the master keyboard or synthesizer 402 to the control unit 401 of the computer
414 Übergabe der digitalisierten Klangmuster 410 als Referenzmuster an das Masterkeyboard bzw. den Synthesizer 402414 Transfer of the digitized sound pattern 410 to the master keyboard or synthesizer 402 as a reference pattern
500 Blockdiagramm zur Veranschaulichung der Steuerung einzelner 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önnen500 block diagram to illustrate the control of individual or several acoustic parameters of digitized sound patterns by a system, consisting of a computer which has an electronic tone generator 502 and a sound card 510, and a 3D input device 104 for input of parameterized control signals for real-time motion control of virtual objects that can be displayed on a screen
501 Steuereinheit des Computers, der über einen elektronischen Tongenerator 502 und eine Sound-Karte 510 verfügt501 Control unit of the computer, which has an electronic tone generator 502 and a sound card 510
502 elektronischer Tongenerator des Computers nach dem MIDI- Standard502 electronic tone generator of the computer according to the MIDI standard
504a MIDI/IN-Signaleingang des elektronischen Tongenerators504a MIDI / IN signal input of the electronic tone generator
504b MIDI/OUT-Signalausgang des elektronischen Tongenerators504b MIDI / OUT signal output of the electronic tone generator
506 Lautsprecheranschlussbuchse des Computers506 Computer speaker connector
Lautsprecherspeaker
510 Sound-Karte des Computers510 computer sound card
512 Speicher der Sound-Karte 510, in dem eine Datenbank mit digitalisierten Klangmustern gespeichert ist512 memory of the sound card 510, in which a database with digitized sound patterns is stored
514a parametrisierte MIDI-Ansteuersignale von der Steuereinheit 501 des Computers zur Sound-Karte 510514a parameterized MIDI drive signals from the control unit 501 of the computer to the sound card 510
514b MIDI/IN-Signal von der Sound-Karte 510 zum elektronischen Tongenerator 502 Nr. Symbol514b MIDI / IN signal from sound card 510 to electronic tone generator 502 No symbol
514c MIDI/OUT-Signal vom elektronischen Tongenerator 502 zur Steuereinheit 501 des Computers 514c MIDI / OUT signal from the electronic tone generator 502 to the control unit 501 of the computer

Claims

Patentansprüche claims
1. Verfahren zur Echtzeit-Bewegungssteuerung eines Gelenk-Objekts, bei dem die folgenden Schritte durchgeführt werden: a) Definition von wenigstens einem parametrisierten Bewegungsmuster (106) für das Gelenk-Objekt, b) Definition von wenigstens einem- parametrisierten Oberflächenmuster (108) für das Gelenk-Objekt, c) Eingabe von parametrisierten Ansteuersignalen (116) mittels eines 3D-Eingabegeräts (104), d) 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) Berechnung der Oberfläche des Gelenk-Objekts auf Grundlage der Skelett-Änderungsdaten sowie auf Grundlage von wenigstens einem Oberflächenmuster (108), wobei die Schritte c) , d) und e) zyklisch wiederholt werden, um eine Echtzeit-Bewegungssteuerung des Gelenk-Objekts abhängig von den Ansteuersignalen (116) zu erhalten.1. Method for real-time motion control of a joint object, in which the following steps are carried out: a) definition of at least one parameterized movement pattern (106) for the joint object, b) definition of at least one parameterized surface pattern (108) for the joint object, c) input of parameterized control signals (116) by means of a 3D input device (104), d) calculation of skeletal change data on the basis of the parameterized control signals (116) and on the basis of at least one parameterized movement pattern (106), the skeleton change data reflecting translational and / or rotational changes in the position or orientation of the joints of the joint object, e) calculating the surface of the joint object on the basis of the skeleton change data and on the basis of at least one surface pattern (108) , steps c), d) and e) being repeated cyclically in order to perform a real-time movement step control of the joint object depending on the control signals (116).
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass weiterhin Klangsignale (224) durch Verknüpfung gespeicherter digitaler, parametrisierter Klangmuster (110) mit parametrisierten Ansteuersignalen (116) erzeugt werden.2. The method according to claim 1, characterized in that sound signals (224) are further generated by linking stored digital, parameterized sound patterns (110) with parameterized control signals (116).
3. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass zeitliche Ableitungen der parametrisierten Ansteuersignale (116) ermittelt und verarbeitet werden können.3. The method according to any one of the preceding claims, characterized in that time derivatives of the parameterized control signals (116) can be determined and processed.
4. Verfahren 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 spezifi- ziert werden kann.4. The method according to any one of the preceding claims, characterized in that the assignment of the parameterized control signals (116) or their derivatives to the movement patterns (106), surface patterns (108) or sound patterns (110) can be freely specified.
5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass weiterhin parametrisierte Beleuchtungsmuster (112) hin- terlegt werden, die zur Erzeugung von Beleuchtungseffekten mittels entsprechender Verknüpfungen mit parametrisierten Ansteuersignalen (116) verwendet werden.5. The method according to any one of the preceding claims, characterized in that further parameterized lighting patterns (112) are stored, which are used to generate lighting effects by means of corresponding links with parameterized control signals (116).
6. Verfahren zur frei spezifizierbaren Echtzeit-Steuerung von animierten Grafiken, Video- und/oder Audiosequenzen, dadurch gekennzeichnet, dass6. Method for freely specifiable real-time control of animated graphics, video and / or audio sequences, characterized in that
- zur Erzeugung von Bewegungs-, Oberflächen- und/oder Klangdaten wenigstens ein vordefiniertes parametrisiertes Bewegungsmuster (106), Oberflächenmuster (108) und/oder Klang- - muster (110) hinterlegt ist,at least one predefined parameterized movement pattern (106), surface pattern (108) and / or sound pattern (110) is stored for generating movement, surface and / or sound data,
- parametrisierte Ansteuersignale (116) verschiedener Freiheitsgrade von einem 3D-Eingabegerät (104) ausgewertet 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) verwendet werden und- Parameterized control signals (116) of different degrees of freedom are evaluated by a 3D input device (104) and to generate movement data (310), surface data (312) and / or sound data (314) with the aid of the stored movement patterns (106), surface patterns (108) and / or sound patterns (110) can be used and
- die Zuordnung von parametrisierten Ansteuersignalen (116) jeweils eines Freiheitsgrads zu einem bestimmten Bewegungsmuster (106), Oberflächenmuster (108) und/oder Klangmuster (110) frei spezifizierbar ist.- The assignment of parameterized control signals (116) of a degree of freedom to a specific movement pattern (106), surface pattern (108) and / or sound pattern (110) can be freely specified.
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass weiterhin zeitliche Ableitungen der parametrisierten An- Steuersignale (116) einem bestimmten Bewegungsmuster (106) , Oberflächenmuster (108) und/oder Klangmuster (110) zugeordnet werden können.7. The method according to claim 6, characterized in that further time derivatives of the parameterized control signals (116) a certain movement pattern (106), Surface patterns (108) and / or sound patterns (110) can be assigned.
8. Verfahren 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.8. The method according to claim 6 or 7, characterized in that coupling parameters of the assignment of parameterized control signals (116), such as damping and amplification, can be freely specified.
9. Computersoftware-Produkt, dadurch gekennzeichnet, dass es ein Verfahren gemäß einem der oben beschriebenen Ausführungsbeispiele implementiert, wenn es in einem Speicher eines Computers geladen ist.9. Computer software product, characterized in that it implements a method according to one of the exemplary embodiments described above when it is loaded in a memory of a computer.
10. System zur Echtzeit-Bewegungssteuerung von virtuellen oder realen Gelenk-Objekten, wobei das System über einen Speicher verfügt, in dem abgelegt sind:10. System for real-time motion control of virtual or real articulated objects, the system having a memory in which are stored:
- wenigstens ein parametrisiertes Bewegungsmuster (106) und - wenigstens ein parametrisiertes Oberflächenmuster (108) von einem Gelenk-Objekt,- at least one parameterized movement pattern (106) and - at least one parameterized surface pattern (108) of a joint object,
- ein 3D-Eingabegerät (104) zur Eingabe von parametrisierten Ansteuersignalen (116) für die Echtzeit-Bewegungssteuerung,a 3D input device (104) for input of parameterized control signals (116) for real-time motion control,
- ein Bewegungsgenerator (204) zur Berechnung von Skelett-Än- derungsdaten 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- A motion generator (204) for calculating skeleton change data on the basis of the parameterized control signals (116) and on the basis of at least one parameterized motion pattern (106), the skeleton change data translational and / or rotational changes in position or orientation of the joints of the joint object, as well
- ein Oberflächengenerator (206) zur Berechnung der Oberfläche des Gelenk-Objekts auf Grundlage der Skelett- Änderungsdaten und des parametrisierten Oberflächenmusters- A surface generator (206) for calculating the surface of the joint object on the basis of the skeleton change data and the parameterized surface pattern
(108) . (108).
11. System nach Anspruch 10, ςfekennzeichnet durch einen Klanggenerator (210) zur Erzeugung von Klangsignalen durch Verknüpfung von wenigstens einem digitalen parametrisierten Klangmuster (110) mit parametrisierten Ansteuersignalen (116) .11. System according to claim 10, ς f ek indicates by a sound generator (210) for generating sound signals by linking at least one digitally parameterized sound pattern (110) with parameterized control signals (116).
12. System nach einem der Ansprüche 10 oder 11, gekennzeichnet durch ein Freispezifizierungsmodul (202) zur Ermittlung und Verarbeitung von zeitlichen Ableitungen der parametrisierten Ansteuersignale (116) .12. System according to one of claims 10 or 11, characterized by a free specification module (202) for determining and processing time derivatives of the parameterized control signals (116).
13. System nach einem der Ansprüche 10 bis 12, 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 according to one of claims 10 to 12, characterized by a free specification module (202) for optional assignment of the parameterized control signals (116) or their derivatives for the movement data (310), surface data (312) and / or sound data (314).
14. System zur frei spezifizierbaren Echtzeit-Steuerung für animierte Grafiken, Video- und/oder Audiosequenzen, aufweisend - 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, sowie14. System for freely specifiable real-time control for animated graphics, video and / or audio sequences, comprising - a memory in which for the generation of movement data (310), surface data (312), sound data (314) and / or lighting data ( 316) at least one predefined parameterized movement pattern (106), surface pattern (108), sound pattern (110) and / or lighting pattern (112) is stored, and
- 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 Bewe- gungsmuster (106), Oberflächenmuster (108), Klangmuster- A computing unit for evaluating parameterized control signals (116) of different degrees of freedom from a 3D input device (104) for generating movement data (310), surface data (312), sound data (314) and / or lighting data (316) with the aid of the stored evidence - pattern (106), surface pattern (108), sound pattern
(110) und/oder Beleuchtungsmuster (112), weiterhin aufweisend ein Freispezifizierungsmodul (202) zur frei spezifizierbaren Zuordnung von parametrisierten Ansteu- ersignalen (116) jeweils eines Freiheitsgrads zu einem bestimmten Bewegungsmuster (106), Öberflächenmuster (108), Klangmuster (110) und/oder Beleuchtungsmuster (112) .(110) and / or lighting pattern (112), further comprising a free specification module (202) for the freely specifiable assignment of parameterized control signals (116) each with a degree of freedom to a specific movement pattern (106), surface pattern (108), sound pattern (110) and / or lighting patterns (112).
15. System nach Anspruch 14, 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 Beleuch- tungsmuster (112) ermöglicht.15. System according to claim 14, characterized in that the free specification module (202) furthermore the assignment of time derivatives of the parameterized control signals (116) to a specific movement pattern (106), surface pattern (108), sound pattern (110) and / or lighting tion pattern (112).
16. System nach Anspruch 14 oder 15, dadurch gekennzeichnet, dass das Freispezifizierungsmodul (202) eine frei spezifi- zierbare Einstellung von Kopplungsparametern der Zuordnung von parametrisierten Ansteuersignalen (116) , wie zum Beispiel Dämpfung und Verstärkung, ermöglicht.16. System according to claim 14 or 15, characterized in that the free specification module (202) enables a freely specifiable setting of coupling parameters of the assignment of parameterized control signals (116), such as damping and amplification.
17. System zur Echtzeit-Steuerung von akustischen Parametern digitalisierter Klangmuster (410), aufweisend:17. A system for real-time control of acoustic parameters of digitized sound patterns (410), comprising:
- einen Computer, dessen Steuereinheit (401) mit mindestens einem elektronischen Musikinstrument (402) über eine MIDI- Schnittstelle (404a+b) leitend verbunden ist und- A computer, the control unit (401) with at least one electronic musical instrument (402) via a MIDI interface (404a + b) is conductively connected and
- ein 3D-Eingabegerät (104) zur Eingabe von parametrisierten Ansteuersignalen (116) wobei die digitalisierten Klangmuster (410)- A 3D input device (104) for input of parameterized control signals (116), the digitized sound pattern (410)
- im Speicher mindestens eines elektronischen Musikinstruments (402) digital gespeichert sind und- Are digitally stored in the memory of at least one electronic musical instrument (402) and
- auf mindestens einem elektronischen Musikinstrument (402) generiert und abgespielt werden können, dadurch gekennzeichnet, dass einzelne oder mehrere akustische Parameter der digital gespeicherten Klangmuster (410) mittels durch ein Bewegen des- Can be generated and played on at least one electronic musical instrument (402), characterized in that individual or more acoustic parameters of the digitally stored sound pattern (410) are obtained by moving the
3D-Eingabegeräts (104) in Echtzeit erzeugt bzw. beeinflusst werden können.3D input devices (104) can be generated or influenced in real time.
18. System nach Anspruch 21, 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 according to claim 21, characterized in that for generating or influencing individual or more acoustic parameters of the digitally stored sound pattern (410) control elements, buttons, switches, rotary knobs and / or sliders of a virtual mixer are provided.
19. System nach Anspruch 18, 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 according to claim 18, characterized in that the controlled acoustic parameters of a specific digitized sound pattern (410) are pitches, note or pause values, volumes, tempos, articulation instructions, timbres, pedal, vibrato, chorus. , Reverb, overtone and / or other special effects.
20. System nach einem der Ansprüche 17 bis 19, dadurch gekennzeichnet, dass zeitliche Ableitungen der parametrisierten Ansteuersi- gnale (116) ermittelt und verarbeitet werden können.20. System according to one of claims 17 to 19, characterized in that time derivatives of the parameterized control signals (116) can be determined and processed.
21. System nach einem der Ansprüche 17 bis 20, 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 according to one of claims 17 to 20, characterized in that the assignment of parameterized control signals (116) of a degree of freedom to one or more parameters of a specific digitized sound pattern (410) can be freely specified.
22. System zur Echtzeit-Steuerung von akustischen Parametern digitalisierter Klangmuster (512), aufweisend:22. A system for real-time control of acoustic parameters of digitized sound patterns (512), comprising:
- einen Computer, dessen Steuereinheit (501) mit mindestens einer Sound-Karte (510) sowie mit mindestens einem Tongene- rator (502) verbunden ist und- A computer, the control unit (501) of which is connected to at least one sound card (510) and to at least one sound generator (502), and
- ein 3D-Eingabegerät (104) zur Eingabe von parametrisierten Ansteuersignalen (116) für die Echtzeit-Bewegungssteuerung von Objekten, wobei die digitalisierten Klangmuster (512) - im Speicher mindestens einer Sound-Karte (510) des Computers digital gespeichert sind und- A 3D input device (104) for entering parameterized control signals (116) for real-time motion control of objects, the digitized sound patterns (512) - being digitally stored in the memory of at least one sound card (510) of the computer and
- auf mindestens einem Tongenerator (502) desselben Computers generiert und abgespielt werden können, 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 wer¬ den können.- can be generated on at least one tone generator (502) of the same computer and played back, characterized in that individual or a plurality of acoustic parameters of the digitally stored sound patterns (512) generated by a movement of the 3D input device (104) in real time or influenced ¬ that can.
23. System nach Anspruch 22, dadurch gekennzeichnet, dass weiterhin zeitliche Ableitungen der parametrisierten Ansteuersignale (116) einem oder mehreren Parametern eines be¬ stimmten digitalisierten Klangmusters (512) zugeordnet werden können.23. The system according to claim 22, characterized in that time derivatives of the parameterized control signals (116) can also be assigned to one or more parameters of a certain digitized sound pattern (512).
24. System nach einem der Ansprüche 22 oder 23, dadurch gekennzeichnet, dass Kopplungsparameter der Zuordnung von parametrisierten Ansteuersignalen (116) frei spezifizierbar sind.24. System according to any one of claims 22 or 23, characterized in that coupling parameters of the assignment of parameterized control signals (116) can be freely specified.
25. Verfahren zur Echtzeit-Steuerung von akustischen Parame¬ tern digital aufgezeichneter Klangmuster (410 bzw. 512) , die - im Speicher mindestens einer Sound-Karte (510) eines Computers und/oder mindestens eines elektronischen Musikinstruments (402) nach dem MIDI-Standard digital gespeichert sind und - auf mindestens einem Tongenerator (502) desselben Computers oder mindestens einem elektronischen Musikinstrument (402) nach dem MIDI-Standard abgespielt werden können, wobei die Steuereinheit (401 bzw. 501) des Computers25. A method for real-time control of acoustic parame ¬ tern digitally recorded sound patterns (410 or 512) - are digitally stored in the memory of at least one sound card (510) of a computer and / or at least one electronic musical instrument (402) according to the MIDI standard and - on at least one tone generator (502) of the same computer or at least one electronic musical instrument (402) can be played according to the MIDI standard, the control unit (401 or 501) of the computer
- mit mindestens einer Sound-Karte (510) und mindestens einem Tongenerator (502) bzw. mit mindestens einem elektronischen- With at least one sound card (510) and at least one tone generator (502) or with at least one electronic
Musikinstrument (402) über eine MIDI-Schnittstelle (404a+b bzw. 504a+b)' leitend verbunden ist undMusical instrument (402) via a MIDI interface (404a + b or 504a + b) 'is conductively connected and
- mit einem 3D-Eingabegerät (104) zur Eingabe von parametrisierten Ansteuersignalen (116) zur Echtzeit-Bewegungssteue- rung virtueller Objekte leitend verbunden ist, 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 erzeugt bzw. beeinflusst werden können.- Conductively connected to a 3D input device (104) for entering parameterized control signals (116) for real-time motion control of virtual objects, characterized in that individual or more acoustic parameters of the digitally stored sound patterns (410 or 512) are controlled of the virtual objects can be generated or influenced in real time by moving the 3D input device (104).
26. Verfahren nach Anspruch 25, 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. The method according to claim 25, characterized in that the virtual objects which are moved to generate or influence individual or more acoustic parameters of the digitally stored sound patterns (410 or 512) are the control elements, buttons, switches, Knobs and / or sliders of a virtual mixer is.
27. Verfahren nach einem der Ansprüche 25 oder 26, 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, Arti- kulationsanweisungen, Klangfarben, Pedal-, Vibrato-, Chorus-,27. The method according to any one of claims 25 or 26, characterized in that the controlled acoustic parameters of a certain digitized sound pattern (410 or 512) are pitches, note or pause values, volumes, tempos, arti- calculation instructions, timbres, pedal, vibrato, chorus,
Hall-, Oberton- und/oder andere Spezialeffekte handelt.Hall, overtone and / or other special effects.
28. Verfahren nach einem der Ansprüche 25 bis 27, dadurch gekennzeichnet, dass Kopplungsparameter der Zuordnung von parametrisierten Ansteuersignalen (116) frei spezifizierbar sind. 28. The method according to any one of claims 25 to 27, characterized in that coupling parameters of the assignment of parameterized control signals (116) can be freely specified.
EP01980243A 2000-09-13 2001-08-13 Freely specifiable real-time control Withdrawn EP1319207A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE20121798U DE20121798U1 (en) 2000-09-13 2001-08-13 Method for real-time control of a jointed object in which an object is controlled via use of a virtual object in a computer program representing a real object

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE10045117 2000-09-13
DE10045117A DE10045117C2 (en) 2000-09-13 2000-09-13 Method and device for real-time geometry control
PCT/EP2001/009356 WO2002023323A2 (en) 2000-09-13 2001-08-13 Freely specifiable real-time control

Publications (1)

Publication Number Publication Date
EP1319207A2 true EP1319207A2 (en) 2003-06-18

Family

ID=7655959

Family Applications (1)

Application Number Title Priority Date Filing Date
EP01980243A Withdrawn EP1319207A2 (en) 2000-09-13 2001-08-13 Freely specifiable real-time control

Country Status (5)

Country Link
US (1) US7199301B2 (en)
EP (1) EP1319207A2 (en)
AU (1) AU2002212137A1 (en)
DE (1) DE10045117C2 (en)
WO (1) WO2002023323A2 (en)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7339589B2 (en) * 2002-10-24 2008-03-04 Sony Computer Entertainment America Inc. System and method for video choreography
US6999093B1 (en) * 2003-01-08 2006-02-14 Microsoft Corporation Dynamic time-of-day sky box lighting
WO2005098583A1 (en) * 2004-03-30 2005-10-20 Pioneer Corporation Sound information output device, sound information output method, and sound information output program
AU2005292085B2 (en) * 2004-10-01 2008-10-30 Wms Gaming Inc. Displaying 3D characters in gaming machines
US20090181769A1 (en) * 2004-10-01 2009-07-16 Alfred Thomas System and method for 3d image manipulation in gaming machines
US20080108413A1 (en) * 2004-10-01 2008-05-08 Phil Gelber System and Method for 3D Reel Effects
DE102004059051A1 (en) * 2004-12-07 2006-06-08 Deutsche Telekom Ag Virtual figure and avatar representing method for audiovisual multimedia communication, involves forming parameters according to preset control parameter, and representing animated model on display device in dependence of control parameter
CN1870128B (en) * 2005-05-25 2011-11-23 光宝科技股份有限公司 Method and device for mixing music
US7855715B1 (en) * 2005-07-27 2010-12-21 James Harrison Bowen Switch with depth and lateral articulation detection using optical beam
US9666031B2 (en) * 2006-06-12 2017-05-30 Bally Gaming, Inc. Wagering machines having three dimensional game segments
DE102006049863B4 (en) * 2006-10-23 2015-09-10 Siemens Aktiengesellschaft Navigator in medical moving pictures
EP2111606A4 (en) * 2007-01-22 2013-07-31 Bell Helicopter Textron Inc System and method for the interactive display of data in a motion capture environment
CA2675995C (en) 2007-01-22 2014-11-04 Bell Helicopter Textron Inc. System and method for performing multiple, simultaneous, independent simulations in a motion capture environment
CA2675276C (en) * 2007-01-22 2017-09-12 Bell Helicopter Textron Inc. System and method for controlling a virtual reality environment by an actor in the virtual reality environment
DE08733207T1 (en) * 2007-04-17 2011-04-21 Bell Helicopter Textron Inc., Fort Worth COLLABORATIVE VR SYSTEM USING MULTIPLE MOTION RECEIVING SYSTEMS AND MULTIPLE INTERACTIVE CLIENTS
WO2009052032A1 (en) * 2007-10-19 2009-04-23 Sony Computer Entertainment America Inc. Scheme for providing audio effects for a musical instrument and for controlling images with same
GB0901858D0 (en) * 2009-02-05 2009-03-11 Schoegler Benjaman W Data input device and sound generating device
US7939742B2 (en) * 2009-02-19 2011-05-10 Will Glaser Musical instrument with digitally controlled virtual frets
US8509479B2 (en) 2009-05-29 2013-08-13 Microsoft Corporation Virtual object
JP5434638B2 (en) * 2010-01-29 2014-03-05 ソニー株式会社 Information processing apparatus and information processing method
US8620661B2 (en) * 2010-03-02 2013-12-31 Momilani Ramstrum System for controlling digital effects in live performances with vocal improvisation
US9092135B2 (en) * 2010-11-01 2015-07-28 Sony Computer Entertainment Inc. Control of virtual object using device touch interface functionality
US9122321B2 (en) 2012-05-04 2015-09-01 Microsoft Technology Licensing, Llc Collaboration environment using see through displays
US9519640B2 (en) 2012-05-04 2016-12-13 Microsoft Technology Licensing, Llc Intelligent translations in personal see through display
US9019174B2 (en) 2012-10-31 2015-04-28 Microsoft Technology Licensing, Llc Wearable emotion detection and feedback system
WO2014137311A1 (en) 2013-03-04 2014-09-12 Empire Technology Development Llc Virtual instrument playing scheme
RU2584645C1 (en) * 2015-05-15 2016-05-20 Мария Петровна Кибардина Method for diagnosis of articulation of speech disorders
WO2018189854A1 (en) * 2017-04-13 2018-10-18 ローランド株式会社 Electronic musical instrument main body device and electronic musical instrument system
FR3075428B1 (en) * 2017-12-15 2020-02-28 Enhancia RING AND INTERFACE MODULE
US11073920B1 (en) 2020-10-20 2021-07-27 Cirque Corporation Multi-touch input system
CN112720504B (en) * 2021-01-20 2023-03-28 清华大学 Method and device for controlling learning of hand and object interactive motion from RGBD video

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4600919A (en) * 1982-08-03 1986-07-15 New York Institute Of Technology Three dimensional animation
DE3611337A1 (en) 1986-04-04 1987-10-22 Deutsche Forsch Luft Raumfahrt OPTO-ELECTRONIC ARRANGEMENT HOUSED IN A PLASTIC BALL
DE3611336A1 (en) * 1986-04-04 1987-10-15 Deutsche Forsch Luft Raumfahrt FORCE TORQUE SENSOR
GB9011183D0 (en) * 1990-05-18 1990-07-04 British Aerospace Control devices
DE69130549T2 (en) * 1990-06-11 1999-05-27 Hitachi Ltd Device for generating an object movement path
US5630017A (en) * 1991-02-19 1997-05-13 Bright Star Technology, Inc. Advanced tools for speech synchronized animation
US5757360A (en) * 1995-05-03 1998-05-26 Mitsubishi Electric Information Technology Center America, Inc. Hand held computer control device
US6011212A (en) * 1995-10-16 2000-01-04 Harmonix Music Systems, Inc. Real-time music creation
US5923337A (en) * 1996-04-23 1999-07-13 Image Link Co., Ltd. Systems and methods for communicating through computer animated images
CN1146805C (en) * 1996-04-25 2004-04-21 松下电器产业株式会社 Method for communicating and generating computer graphics, animation data, and recording media
AU6451698A (en) * 1997-03-06 1998-09-22 Robert B. Howard Wrist-pendant wireless optical keyboard
US6300960B1 (en) * 1997-08-04 2001-10-09 Pixar Animation Studios Realistic surface simulation in computer animation
DE29804023U1 (en) * 1998-02-27 1998-07-30 Schoetzau Claus Hemispherical device for real-time control of synthesizers or "midi" sound generators via push buttons
US6583783B1 (en) 1998-08-10 2003-06-24 Deutsches Zentrum Fur Luft- Und Raumfahrt E.V. Process for performing operations using a 3D input device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO0223323A2 *

Also Published As

Publication number Publication date
DE10045117C2 (en) 2002-12-12
AU2002212137A1 (en) 2002-03-26
DE10045117A1 (en) 2002-03-28
WO2002023323A2 (en) 2002-03-21
US7199301B2 (en) 2007-04-03
US20040080507A1 (en) 2004-04-29
WO2002023323A3 (en) 2003-03-13

Similar Documents

Publication Publication Date Title
WO2002023323A2 (en) Freely specifiable real-time control
Serafin et al. Virtual reality musical instruments: State of the art, design principles, and future directions
US5952599A (en) Interactive music generation system making use of global feature control by non-musicians
Mulder Virtual musical instruments: Accessing the sound synthesis universe as a performer
DE10004372B4 (en) Design of sensations of strength for computer applications with noises
DE10129326B4 (en) Information processing system with a graphical user interface controllable by a voice recognition device and thus equipped musical instrument
US8659545B2 (en) Device and method for controlling computerized equipment
DE69818210T2 (en) Device and method for generating sound and images based on a performance file.
Mulder Towards a choice of gestural constraints for instrumental performers
EP1513056A2 (en) Three-dimensional integrated touch screen input apparatus
Han et al. Virtual pottery: a virtual 3D audiovisual interface using natural hand motions
WO2002041069A1 (en) Method for visually representing and interactively controlling virtual objects on an output visual field
Pressing Some perspectives on performed sound and music in virtual environments
Giordano et al. Design of vibrotactile feedback and stimulation for music performance
Pausch et al. Tailor: creating custom user interfaces based on gesture
François et al. Visual feedback in performer-machine interaction for musical improvisation
Sapir Gestural control of digital audio environments
Goto Virtual musical instruments: Technological aspects and interactive performance issues
Vertegaal An Evaluation of input devices for timbre space navigation
Ramstein A multimodal user interface system with force feedback and physical models
Baloian et al. Visualization for the Mind’s Eye
Sheridan Musings on music making and listening: supervisory control and virtual reality
Sapir Interactive digital audio environments: gesture as a musical parameter
Ernst et al. Creating virtual worlds with a graspable user interface
Grond et al. A supercollider class for vowel synthesis and its use for sonification

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20030411

AK Designated contracting states

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR

AX Request for extension of the european patent

Extension state: AL LT LV MK RO SI

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: 3DCONNEXION GMBH

RIN1 Information on inventor provided before grant (corrected)

Inventor name: VON PRITTWITZ, BERNHARD

17Q First examination report despatched

Effective date: 20071114

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20100302