CN103093745A - 演奏动作显示装置及方法 - Google Patents

演奏动作显示装置及方法 Download PDF

Info

Publication number
CN103093745A
CN103093745A CN2012104209534A CN201210420953A CN103093745A CN 103093745 A CN103093745 A CN 103093745A CN 2012104209534 A CN2012104209534 A CN 2012104209534A CN 201210420953 A CN201210420953 A CN 201210420953A CN 103093745 A CN103093745 A CN 103093745A
Authority
CN
China
Prior art keywords
mentioned
action
cpu11
display
performance
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.)
Granted
Application number
CN2012104209534A
Other languages
English (en)
Other versions
CN103093745B (zh
Inventor
副岛淳一郎
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Publication of CN103093745A publication Critical patent/CN103093745A/zh
Application granted granted Critical
Publication of CN103093745B publication Critical patent/CN103093745B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • 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
    • G10H1/0016Means for indicating which keys, frets or strings are to be actuated, e.g. using lights or leds
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B15/00Teaching music
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B15/00Teaching music
    • G09B15/001Boards or like means for providing an indication of chords
    • G09B15/002Electrically operated systems
    • G09B15/003Electrically operated systems with indication of the keys or strings to be played on instruments
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B15/00Teaching music
    • G09B15/02Boards or like means for providing an indication of notes
    • G09B15/023Electrically operated
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B15/00Teaching music
    • G09B15/06Devices for exercising or strengthening fingers or arms; Devices for holding fingers or arms in a proper position for playing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B15/00Teaching music
    • G09B15/08Practice keyboards
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B5/00Electrically-operated educational appliances
    • G09B5/06Electrically-operated educational appliances with both visual and audible presentation of the material to be studied
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10GREPRESENTATION OF MUSIC; RECORDING MUSIC IN NOTATION FORM; ACCESSORIES FOR MUSIC OR MUSICAL INSTRUMENTS NOT OTHERWISE PROVIDED FOR, e.g. SUPPORTS
    • G10G1/00Means for the representation of music
    • G10G1/02Chord or note indicators, fixed or adjustable, for keyboard of fingerboards
    • 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/36Accompaniment arrangements
    • G10H1/361Recording/reproducing of accompaniment for use with an external source, e.g. karaoke systems
    • G10H1/368Recording/reproducing of accompaniment for use with an external source, e.g. karaoke systems displaying animated or moving pictures synchronized with the music or audio part
    • 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/201User input interfaces for electrophonic musical instruments for movement interpretation, i.e. capturing and recognizing a gesture or a specific kind of movement, e.g. to control a musical instrument

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Educational Technology (AREA)
  • Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Auxiliary Devices For Music (AREA)
  • Processing Or Creating Images (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

本发明提供演奏动作显示装置及方法。演奏动作显示装置具备根据RAM中所存储的演奏信息、动作信息及结构数据而在显示部上显示演奏动作图像的CPU。CPU根据RAM中所存储的标志来判断是否进行演奏技巧动作的显示,在判断为进行该演奏技巧动作的显示的情况下,与对应于不显示该演奏技巧动作的情况的图像的显示方式相比较,使与该演奏技巧动作对应的图像的显示方式变化。

Description

演奏动作显示装置及方法
相关申请的交叉引用:本申请基于2011年10月31日提交的日本专利申请2011-238333号并要求其优先权,通过参照将其全部内容引用于本申请。
技术领域
本发明涉及显示电子乐器的演奏动作的演奏动作显示装置及方法。
背景技术
以往,提出有一种演奏动作显示装置,具备对于对应于演奏的进行而应按键(操作)的键、将按键所使用的手指通知给用户的提示功能。例如,在专利文献1中提出有一种演奏动作显示装置,具备在演奏时作为演奏动作而在显示部上显示手指相对于键盘的位置、由此将按键所使用的手指通知给用户的提示功能。此外,在日本特许第3528051号公报所提出的演奏动作显示装置中,提出在演奏的各部分中,根据接受了演奏动作显示方式的变更操作的情况,而执行手指尺寸的放大及缩小、手指的透射显示、将手指作为线框的显示、视点(显示角度)的变更等。
然而,在日本特许第3528051号公报所提出的演奏动作显示装置中,例如在双手分离配置的部分中,有时显示键盘整体。由于键盘横向较长,因此在显示键盘整体的情况下,按键所使用的手指在显示部中被较小地显示。
此外,在日本特许第3528051号公报所提出的演奏动作显示装置中,如上述那样还能够接受放大及缩小等显示方式的变更操作,但在演奏时演奏者难以进行变更操作。此外,在专利文献1所提出的演奏动作显示装置中,不能够自动地变更视点。因此,演奏者在确认手指的细微动作等特定的演奏技术的情况下,需要演奏者自己进行变更视点的操作。因此,在专利文献1所提出的演奏动作显示装置中,用户可能难以在演奏的同时对特定的演奏技术进行确认。
发明内容
本发明是鉴于这种情况而进行的,其目的在于提供能够进行对于演奏者来说容易目视的演奏动作的显示的演奏动作显示装置及方法。
为了实现上述目的,本发明一个方式的演奏动作显示装置的特征在于,具备:存储构件,存储(a)演奏信息,该演奏信息储存发声开始时间、发声持续时间、音高及使用的手指,(b)结构数据组,该结构数据组由多种结构数据及决定该结构数据彼此的相关性的结构相关数据构成,(c)动作信息,该动作信息表示成为对应于上述发声开始时间而显示多个上述结构数据时的起点的上述结构数据的信息;判断构件,判断是否进行特定动作的显示;以及显示构件,在根据上述存储构件所存储的上述演奏信息、上述动作信息及上述结构数据组使显示构件显示演奏动作图像,并且由上述判断构件判断为进行该特定动作的显示的情况下,使上述显示构件以第一显示方式来显示与该特定动作对应的演奏动作图像,使上述显示构件以与上述第一显示方式不同的第二显示方式显示与不显示该特定动作的情况对应的演奏动作图像。
附图说明
图1是表示演奏动作显示装置及电子乐器的硬件构成的框图。
图2是说明演奏动作显示的例子的图。
图3是说明在显示部进行演奏动作显示时的各个用语的图。
图4是表示控制变量的结构的图。
图5是表示演奏信息的结构的图。
图6是表示结构数据的结构的图。
图7是表示键盘数据的结构的图。
图8是表示动作信息的结构的图。
图9是表示演奏动作显示的主处理的流程的流程图。
图10是表示再现处理的流程的流程图。
图11是表示动作信息检索处理的流程的流程图。
图12是表示演奏信息检索处理的流程的流程图。
图13是表示释放键检查处理的流程的流程图。
图14是表示描绘处理的流程的流程图。
图15是表示键盘显示处理的流程的流程图。
图16是表示手腕显示处理的流程的流程图。
图17是表示手指显示处理的流程的流程图。
图18是表示在放大演奏动作显示中参照的动作信息的结构的图。
图19是表示视点移动时的描绘处理的流程的流程图。
图20是表示视点计算处理的流程的流程图。
图21是表示在进行包括演奏技巧显示的演奏动作显示的情况下参照的控制变量的结构的图。
图22是表示在进行包括演奏技巧显示的演奏动作显示的情况下参照的演奏信息的结构的图。
图23是表示在进行包括演奏技巧显示的演奏动作显示的情况下执行的演奏信息检索处理的流程的流程图。
图24是表示在进行包括演奏技巧显示的演奏动作显示的情况下执行的演奏技巧检索处理的流程的流程图。
图25是表示在进行包括演奏技巧显示的演奏动作显示的情况下执行的描绘处理的流程的流程图。
图26是表示在进行包括演奏技巧显示的演奏动作显示的情况下执行的视点变更计算处理的流程的流程图。
具体实施方式
以下,使用附图对本发明的实施方式进行说明。
图1是表示本发明一个实施方式的演奏动作显示装置及电子乐器的硬件构成的框图。
演奏动作显示装置1例如具备显示部而构成。
演奏动作显示装置1具备CPU(Central Processing Unit:中央处理器)11、ROM(Read Only Memory:只读存储器)12、RAM(Random Access Memory:随机存储器)13、总线14、输入部15、显示部16及MIDI(Musical InstrumentDigital Interface:乐器数字接口)接口17。
CPU11控制演奏动作显示装置1的整体,按照ROM12中所存储的程序或者从ROM12读出到RAM13中的程序来执行各种处理。
ROM12储存CPU11所执行的各种处理的处理程序。此外,RAM13储存从ROM12读出的程序等。
CPU11、ROM12及RAM13经由总线14相互连接。此外,在总线14上连接有输入部15、显示部16及MIDI接口17。
输入部15例如由按钮等构成,对应于来自用户的操作指示而接受各种信息的输入。
显示部16按照CPU11的控制而显示各种设定信息、与演奏动作有关的信息等。
MIDI接口17连接有电子乐器2。MIDI接口17对电子乐器2发送与模范演奏等有关的演奏数据。
电子乐器2具备MIDI接口21、键盘22以及声源及声音系统23。
MIDI接口21从演奏动作显示装置1接收与模范演奏等有关的演奏数据,并将与该演奏数据对应的演奏信号输出到声源及声音系统。此外,从键盘22接受乐器的操作输入,并将与该操作输入对应的演奏信号输出到声源及声音系统。
声源及声音系统23与MIDI接口21连接,基于从MIDI接口输出的信号而输出乐器等的声音。
这种演奏动作显示装置1为,为了对用户的演奏的进步进行辅助,而在显示部16显示演奏时的手腕、手及手指的模范的动作。另外,以下将图2a所示那样的演奏时的手腕、手及手指的动作向显示部16的显示称为通常演奏动作显示。此外,将图2b所示那样的演奏时的手腕、手及手指的动作向显示部16的放大显示称为放大演奏动作显示。此外,将图2c所示那样的演奏时的手腕、手及手指的从斜向的放大显示称为演奏技巧显示。
另外,在以下的说明中,将图2a所示那样的从正面目视键盘的情况下的横向(从低音键朝向高音键的方向)设为x轴方向,将在从正面目视键盘的情况下从正面朝向键盘延伸的方向设为y轴方向,将从正面目视键盘的情况下的上方向设为z轴方向。
图3是说明在显示部16进行演奏动作显示时的各个用语的图。
首先,将显示部16显示的图像作为视场P。将该视场P的中心位置称为视场的中心。此外,将从视场的中心朝向进行描绘(rendering)的情况下的视点延伸的矢量称为视平线矢量。此外,将从视点朝向视场的上端及下端的宽度方向的中心画线的情况下的、该线交叉的角度称为高度方向视场角。
首先,对通常演奏动作显示所需的信息进行说明。该演奏动作显示所需的信息存储在ROM12中。这些信息在演奏时由CPU11从ROM12适宜地复制而临时存储到RAM13中。
图4是表示控制变量的结构的图。该控制变量用于在演奏动作显示装置1中进行通常演奏动作显示及放大演奏动作显示。
在控制变量中,作为变量定义有width、height、f0vy、Center[3]、Eye[3]、EyeVector[3]、NoteR[]、StructR[]、MotionR[]、IndexR、NoteL[]、StructL[]、MotionL[]以及IndexL。
另外,在表示结构的图中,在末尾作为后缀而设置有[]的变量表示序列。例如,Center[3]是由三个变量构成的序列。此外,在表示结构的图中,序列的要素数为空栏的序列,表示根据演奏的曲而分别不同的情况。
width是表示显示部16显示的画面的宽度的变量。
height是表示显示部16显示的画面的高度的变量。
f0vy是表示高度方向视场角(参见图3)的变量。
Center[3]是表示显示部16显示的画面中的视场的中心坐标的变量。在Center[3]中,相对于各个要素而包含有三维坐标系(x,y,z)中的各坐标值,表示三维坐标系中的位置。
Eye[3]是表示显示部16显示的画面中的视点的变量。该变量Eye也与Center同样地表示三维坐标系中的位置。
EyeVector[3]是表示视线矢量的变量。通过从Eye[3]减去Center[3],由此能够得到EyeVector[3]。
NoteR[]是储存右手的演奏信息的序列变量。详细内容后述。
StructR[]是储存右手的结构数据的序列变量。所谓结构数据,是表示手指、手及手腕的结构的图。在显示部16显示的画面中描绘手指、手及手腕时,使用该结构数据。
MotionR[]是储存表示演奏时的右手的动作的动作信息的序列变量。
IndexR是表示描绘对象的右手的动作信息的索引的变量。
NoteL[]是储存左手的演奏信息的序列变量。NoteL[]所储存的变量与NoteR[]相同。
StructL[]是储存左手的结构数据的序列变量。StructL[]所储存的变量与StructR[]相同。
MotionL[]是储存表示演奏时的左手的动作的动作信息的序列变量。MotionL[]所储存的变量与MotionR[]相同。
IndexL是表示描绘对象的左手的动作信息的索引的变量。
图5是表示演奏信息的结构的图。
如上述那样,演奏信息由表示右手的演奏信息的NoteR[]和表示左手的演奏信息的NoteL[]构成。
NoteR[]和NoteL[]的构成相同,因此在图5中,将这些NoteR[]和NoteL[]统一作为否te[]进行说明。
如图5所示,在Note[]中的各个要素(Note[0]、Note[1]、…Note[N]、…)中定义有Time、Gate及Pitch。另外,在以下的说明中,在仅后缀不同的序列变量中,只要没有特别的说明,则都定义有相同的变量。例如,在图5中,仅在Note[0]中定义有Time、Gate及Pitch,但在其他变量(Note[1]、Note[N]等)中也与Note[0]同样地定义有Time、Gate及Pitch。
Time是表示开始发声的时间的变量。
Gate是表示持续发声的时间的变量。
Pitch是表示所发声的声音的音高(频率)的变量。
图6是表示结构数据的结构的图。
如上述那样,结构数据由表示右手的结构数据的StructR[]和表示左手的结构数据的StructL[]构成。
StructR[]和StructL[]的构成相同,因此在图6中,将这些StructR[]和StructL[]统一作为Struct[]进行说明。
如图6所示,在Struct[]中的各个要素中定义有Index、Parent、Children、Child[]、Vertices[][3]、Length、Theta[]、Phi[]以及Lambda[]。
Index是表示结构数据的索引的变量。
Parent是表示成为父数据的结构数据的索引的变量。例如,在Parent的值为2的情况下,索引为2的结构数据成为父数据。另外,在Parent的值为-1的情况下,表示没有父数据。
Children是表示相对于父结构而成为子的结构物的数的变量。
Vertices[][3]是表示父结构,并表示显示部16所显示的多边形的各顶点的三维坐标的序列变量。Vertices[][3]的[]对应于多边形的顶点数,定义与该顶点数相等的要素。此外,Vertices[][3]的[3]对应于各个顶点的三维坐标。
Length是表示父结构的长度的变量。
Theta[]是表示父结构的x轴旋转角的变量,定义与后述的动作信息的要素数相同数的要素。
Phi[]是表示父结构的y轴旋转角的变量,定义与后述的动作信息的要素数相同数的要素。
Lambda[]是表示父结构的z轴旋转角的变量,定义与后述的动作信息的要素数相同数的要素。
图7是表示键盘数据的结构的图。
作为键盘数据的Key[]储存有构成显示部16所显示的键盘的白键及黑键各自的信息。在Key[]中从最低音的键开始依次储存有各个键的信息。例如,Key[0]对应于位于最左侧的白键,比该白键高半音的键对应于Key[1]。
如图7所示,在Key[]中的各个要素中定义有Pitch、isBlack、Vertices[][3]、Status及NoteOff。
Pitch是表示所发声的声音的音高(频率)的变量。
isBlack是表示是黑键还是白键的标志。具体地说,在isBlack为0的情况下表示白键,在为1的情况下表示黑键。
Vertices[][3]是表示键的结构数据(多边形数据),并表示显示部16所显示的多边形的各顶点的三维坐标的序列变量。
Status是表示键的状态的变量。例如,在Status为0的情况下表示释放键状态,在为+的情况下表示按键状态,为-的情况下表示释放键中。
NoteOff是表示从发声开始到消声为止的时间、即消声时间的变量。
图8是表示动作信息的结构的图。
如上述那样,动作信息由表示右手的动作信息的MotionR[]和表示左手的动作信息的MotionL[]构成。
MotionR[]和MotionL[]的构成相同,因此在图8中,将这些MotionR[]和MotionL[]统一作为Motion[]进行说明。
如图8所示,在Motion[]中的各个要素中定义有Time和RootPos[3]。
Time是表示演奏时的各帧(frame)开始的时间的变量。
RootPos[3]是在显示部16显示结构物时成为起点的结构物的三维坐标(起点关节的三维坐标)。
接着,对演奏动作显示的处理的流程进行说明。
图9是表示演奏动作显示的主处理的流程的流程图。该主处理在通常演奏动作显示、放大演奏动画显示及演奏技巧显示中是共通的。
在步骤S1中,CPU11执行数据初始化/读入处理。
即,CPU11进行RAM13中所临时存储的数据的初始化,并且读入ROM12中所存储的各种信息,之后,经由输入部15接受来自用户的指示。作为各种信息,能够列举控制变量、演奏信息、结构数据、键盘数据以及动作信息。
在步骤S2中,CPU11判断是否经由输入部15从用户接受了结束指示。CPU11在该判断为是的情况下结束主处理,在该判断为否的情况下将处理转移到步骤S3。
在步骤S3中,CPU11判断是否经由输入部15从用户接受了乐曲的再现指示。CPU11在该判断为是的情况下将处理转移到步骤S4,在该判断为否的情况下将处理转移到步骤S5。
在步骤S4中,CPU11执行从用户指示的乐曲的再现处理。再现处理的详细情况在图10中具体说明。当步骤S4的处理结束时,CPU11将处理转移到步骤S2。
在步骤S5中,CPU11判断是否经由输入部15从用户接受了再现的停止指示。CPU11在该判断为是的情况下将处理转移到步骤S6,在该判断为否的情况下将处理转移到步骤S2。
在步骤S6中,CPU11结束所演奏的乐曲的再现。当步骤S6的处理结束时,CPU11将处理转移到步骤S2。
图10是表示再现处理的流程的流程图。
在步骤S11中,CPU11执行初始化处理。
即,CPU11根据开始了再现处理的情况,而进行演奏信息的初始化。演奏信息的初始化,是指将控制变量、键盘数据、演奏信息、结构数据以及动作信息存储到RAM13中。此处,演奏信息、结构数据及动作信息对应于在图9的步骤S3中所再现指示的乐曲。此外,CPU11在初始化处理中将再现结束标志存储到RAM13中。该再现结束标志的初始值被设定为OFF。
在步骤S12中,CPU11从未图示的计时器取得系统时刻。
在步骤S13中,CPU11判断RAM13中所存储的再现结束标志的状态。CPU11在再现结束标志为ON的情况下结束再现处理。CPU11在再现结束标志为OFF的情况下将处理转移到步骤S14。
在步骤S14中,CPU11更新正在再现的乐曲中的当前时刻(再现位置)。
在步骤S15中,CPU11判断在步骤S14中所更新的当前时刻是否超过正在再现的乐曲的结束时刻。CPU11在该判断为是的情况下将处理转移到步骤S16,在该判断为否的情况下将处理转移到步骤S17。
在步骤S16中,CPU11将RAM13中所存储的再现结束标志更新为ON。当步骤S16的处理结束时,CPU11将处理转移到步骤S13。
在步骤S17中,CPU11执行进行右手部分的动作信息的检索的处理、即右手部分动作信息检索处理。右手部分动作信息检索处理的详细情况在图11中具体说明。
在步骤S18中,CPU11执行进行左手部分的动作信息的检索的处理、即左手部分动作信息检索处理。左手部分动作信息检索处理的详细情况在图11中具体说明。
在步骤S19中,CPU11执行进行右手部分的演奏信息的检索的处理、即右手部分演奏信息检索处理。右手部分演奏信息检索处理的详细情况在图12中具体说明。
在步骤S20中,CPU11执行进行左手部分的演奏信息的检索的处理、即左手部分演奏信息检索处理。左手部分演奏信息检索处理的详细情况在图12中具体说明。
在步骤S21中,CPU11执行释放键检查处理。释放键检查处理的详细情况在图13中具体说明。当步骤S21的处理结束时,CPU11将处理转移到步骤S13。
图11是表示动作信息检索处理的流程的流程图。
另外,CPU11在执行右手部分动作信息检索处理的情况下检索MotionR[],在执行左手部分动作信息检索处理的情况下检索MotionL[]。另外,在本流程图中说明的Motion[],在执行右手部分动作信息检索处理的情况下置换为MotionR[],在执行左手部分动作信息检索处理的情况下置换为MotionL[]。
在步骤S31中,CPU11取得RAM13中所存储的控制变量(handCtrl)的显示对象动作信息索引。此处,CPU11在执行右手部分动作信息检索处理的情况下取得IndexR,在执行左手部分动作信息检索处理的情况下取得IndexL。
在步骤S32中,CPU11根据所取得的显示对象动作信息索引来判断是否取得了全部动作信息。即,CPU11判断显示对象动作信息索引是否与Motion[]的后缀的最大值相等。CPU11在该判断为是的情况下结束动画信息检索处理,在该判断为否的情况下将处理转移到步骤S33。
在步骤S33中,CPU11判断在图10的步骤S14中所更新的当前时刻是否经过了Motion[]的帧时间。CPU11在该判断为是的情况下将处理转移到步骤S34,在该判断为否的情况下将处理转移到步骤S35。
在步骤S34中,CPU11更新RAM13中所存储的控制变量(handCtrl)的显示对象动作信息索引。即,CPU11通过使在步骤S31中取得的显示对象动作信息索引的值增量,来更新显示对象动作信息索引。
在步骤S35中,CPU11取得下一个动作信息。当该处理结束时,CPU11将处理转移到步骤S32。
图12是表示演奏信息检索处理的流程的流程图。
另外,在本流程图中说明的Note[],在执行右手部分动作信息检索处理的情况下置换为NoteR[],在执行左手部分动作信息检索处理的情况下置换为NoteL[]。
在步骤S41中,CPU11从RAM13所存储的控制变量(handCtrl)中取得Note[]作为显示对象的演奏信息。
在步骤S42中,CPU11根据在步骤S41中取得的显示对象的演奏信息来判断是否取得了全部演奏信息。即,CPU11判断Note[]的后缀是否与ROM12中所存储的Note[]的后缀的最大值相等。CPU11在该判断为是的情况下结束演奏信息检索处理,在该判断为否的情况下将处理转移到步骤S43。
在步骤S43中,CPU11判断在图10的步骤S14中所更新的当前时刻是否到达Note[]的发声开始时间。CPU11在该判断为是的情况下将处理转移到步骤S45,在该判断为否的情况下将处理转移到步骤S44。
在步骤S44中,CPU11将RAM13所存储的控制变量(handCtrl)中所储存的演奏信息更新为接下来进行发声的演奏信息。具体地说,CPU11使在步骤S41中取得的Note[]的后缀增量,并从RAM13中取得后缀被增量后的Note[]的信息。然后,CPU11将RAM13中所存储的控制变量(handCtrl)重写为所取得的Note[]的信息。
在步骤S45中,CPU11判断在图10的步骤S14中所更新的当前时刻是否发声。CPU11在该判断为是的情况下将处理转移到步骤S46,在该判断为否的情况下将处理转移到步骤S47。
在步骤S46中,CPU11在RAM13所存储的键盘数据(Key[])中,将相应的键的状态(Status)更新为“+”(按键状态),并且更新该键盘数据中的消声时间(NoteOff)。此处,CPU11参照控制变量中所储存的演奏信息的Pitch,来确定与在步骤S44中所取得的Note[]的Pitch相对应的键。
在步骤S47中,CPU11取得下一个演奏信息。当该处理结束时,CPU11将处理转移到步骤S42。
图13是表示释放键检查处理的流程的流程图。
在步骤S51中,CPU11从RAM13所存储的键盘数据(Key[])中取得最初的键的信息。此处,最初的键的信息,例如是最低音的键的信息(Key[0])。
在步骤S52中,CPU11判断是否完成了全部键的信息的检查。即,CPU11判断Key[]的后缀是否与ROM12中所存储的Key[]的后缀的最大值相等。CPU11在该判断为是的情况下结束释放键检查处理,在该判断为否的情况下将处理转移到步骤S53。
在步骤S53中,在步骤S51或步骤S55中所取得的键的信息所包含的消声时间中存储有时间的情况下,CPU11判断在图10的步骤S14中所更新的当前时刻是否经过了该消声时间。CPU11在该判断为是的情况下将处理转移到步骤S54,在该判断为否的情况下将处理转移到步骤S55。
在步骤S54中,CPU11将相应的键的状态(Status)更新为“-”(释放键状态),并且清除该键盘数据中的消声时间(NoteOff)。当步骤S54的处理结束时,CPU11将处理转移到步骤S55。
在步骤S55中,CPU11取得下一个键的信息。当步骤S55的处理结束时,CPU11将处理转移到步骤S52。
图14是表示描绘处理的流程的流程图。另外,在图9中说明了的主处理的步骤S1的数据的初始化/读入处理完成之后,继续进行描绘处理。
在步骤S61中,CPU11执行视点设定处理。
即,CPU11根据RAM13所存储的控制变量(handCtrl)中所储存的高度方向的视场角(f0vy)、视场的中心坐标(Center[3])及视点(Eye[3]),来设定显示部16显示的画面中的视点。
在步骤S62中,CPU11执行键盘显示处理。键盘显示处理的详细情况在图15中具体说明。
在步骤S63中,CPU11执行右手腕显示处理。右手腕显示处理的详细情况在图16中具体说明。
在步骤S64中,CPU11执行左手腕显示处理。左手腕显示处理的详细情况在图16中具体说明。
图15是表示键盘显示处理的流程的流程图。
在步骤S71中,CPU11为了显示键盘而将键的结构数据压入矩阵堆栈。
在步骤S72中,CPU11移动到将使键盘旋转时的中心点作为原点的坐标系。
在步骤S73中,从RAM13所存储的键盘数据(Key[])中取得最初的键的结构数据。此处,最初的键的结构数据,例如是与最低音的键的信息(Key[0])相对应的结构数据(Vertices[][3])。
在步骤S74中,CPU11判断是否完成了全部键的显示。CPU11在该判断为是的情况下将处理转移到步骤S82,在该判断为否的情况下将处理转移到步骤S75。
在步骤S75中,CPU11判断与所取得的键的结构数据对应的键的状态是否为“+”(按键状态)或“-”(释放键状态)。CPU11在该判断为是的情况下将处理转移到步骤S76,在该判断为否的情况下将处理转移到步骤S80。
在步骤S76中,CPU11将在步骤S73或步骤S81中所取得的键的结构数据压入矩阵堆栈。此处,矩阵堆栈是用于进行结构数据的3D描绘的数据结构。
在步骤S77中,CPU11使在步骤S76中被压入矩阵堆栈的结构数据的坐标系旋转规定角度。通过在该状态下显示,由此键的状态为“+”(按键状态)或“-”(释放键状态)的键显示为正被按键。
在步骤S78中,CPU11对被压入矩阵堆栈的键的结构数据进行多边形显示。
在步骤S79中,CPU11使在步骤S76中所压入的键的结构数据弹出(清除)。
在步骤S80中,CPU11对被压入矩阵堆栈的键的结构数据进行多边形显示。
在步骤S81中,CPU11取得下一个键的结构数据。另外,CPU11在紧前取得的键的结构数据为最后的键(最高音的键)的情况下,维持取得了该所取得的键的结构数据的状态。当步骤S81的处理结束时,CPU11将处理转移到步骤S74。
在步骤S82中,CPU11使在步骤S71中所压入的键的结构数据弹出(清除)。
图16是表示手腕显示处理的流程的流程图。另外,在本流程图中说明的Motion[],在执行右手腕显示处理的情况下置换为MotionR[],在执行左手腕显示处理的情况下置换为MotionL[]。
在步骤S91中,CPU11从RAM13所存储的动作信息(Motion[])中取得显示对象动作信息。即,CPU11从Motion[]所储存的RootPos[3]中取得在显示部16中显示结构物时成为起点的结构物的三维坐标。
在步骤S92中,CPU11取得在步骤S91中取得的成为起点的结构物(右手腕或左手腕)的结构数据,并压入矩阵堆栈。
在步骤S93中,CPU11为了从肩位置进行显示,而移动到将肩位置作为原点的坐标系。
在步骤S94中,CPU11参照RAM13中所存储的结构数据(Struct[])的Child[]而取得下位的结构数据。此处,CPU11取得右手或左手的结构数据。
在步骤S95中,CPU11执行手指动画处理。手指动画处理的详细情况在图17中具体说明。
在步骤S96中,CPU11使被压入矩阵堆栈的结构物(右手腕或左手腕)的结构数据弹出。
图17是表示手指显示处理的流程的流程图。另外,在本流程图中说明的Motion[],在执行与右手对应的手指显示处理的情况下置换为MotionR[],在执行与左手对应的手指显示处理的情况下置换为MotionL[]。
在步骤S101中,CPU11参照RAM13中所存储的结构数据(Struct[])来取得Lambda[]的值(z轴旋转角)。然后,CPU11根据取得的z轴旋转角,在坐标系中使z轴的显示角度旋转。
在步骤S102中,CPU11参照RAM13中所存储的结构数据(Struct[])来取得Phi[]的值(y轴旋转角)。然后,CPU11根据取得的y轴旋转角,在坐标系中使y轴的显示角度旋转。
在步骤S103中,CPU11将在图16的步骤S84中取得的手的结构数据压入矩阵堆栈。此处,CPU11已经在图16的步骤S92中将该手的结构数据与手腕的结构数据的值相乘,之后,将相乘的结果压入矩阵堆栈。当在该状态下显示手的结构数据时,以手与手腕连结了的状态显示。
在步骤S104中,CPU11参照RAM13中所存储的结构数据(Struct[])来取得Theta[]的值(x轴旋转角)。然后,CPU11根据取得的x轴旋转角,在坐标系中使x轴的显示角度旋转。
在步骤S105中,CPU11进行矩阵堆栈所储存的手的结构数据的多边形显示。如上述那样,以手与手腕连结了的状态显示。
在步骤S106中,CPU11从矩阵堆栈中弹出手结构数据。
在步骤S107中,CPU11从RAM13所存储的结构数据(Struct[])中取得Length的值(结构的长度)。然后,CPU11将坐标系向x轴方向移动结构的长度量。
在步骤S108中,CPU11参照RAM13中所存储的结构数据(Struct[])的Children的值来判断是否存在子结构。此处,子结构是手指。CPU11在该判断为是的情况下将处理转移到步骤S109,在该判断为否的情况下结束手指显示处理。
在步骤S109中,CPU11参照RAM13中所存储的结构数据(Struct[])的Child[]的值来取得最初的手指结构数据。例如,在从拇指朝向小指依次取得手指结构数据的情况下,CPU11取得拇指的父结构数据作为最初的手指结构数据。
在步骤S110中,CPU11判断是否完成了全部手指的显示。CPU11在该判断为是的情况下结束手指显示处理,在该判断为否的情况下将处理转移到步骤S111。
在步骤S111中,CPU11将在步骤S109或步骤S114中取得的手指结构数据压入矩阵堆栈。此处,CPU11将该手指的结构数据与手的结构数据的值相乘,之后,将相乘的结果压入矩阵堆栈。当在该状态下显示手指的结构数据时,以手指与手连结了的状态显示。
在步骤S112中,CPU11进行在步骤S111中被压入矩阵堆栈的结构数据的多边形显示。
在步骤S113中,CPU11从矩阵堆栈弹出在步骤S112中进行了多边形显示的结构数据。
在步骤S114中,CPU11取得下一个手指结构数据。例如,在紧前取得了拇指的结构数据的情况下,CPU11取得与食指对应的结构数据。此外,例如,在紧前取得了小指的结构数据的情况下,CPU11重新取得与小指对应的结构数据。
接着,对进行放大演奏动作显示时所参照的数据的结构及处理的流程进行说明。另外,在放大演奏动画显示中由于进行视点移动,因此还将进行放大演奏动作显示时称为“视点移动时”。
图18是表示在放大演奏动作显示中参照的动作信息的结构的图。
如上述那样,动作信息由表示右手的动作信息的MotionR[]和表示左手的动作信息的MotionL[]构成。
MotionR[]和MotionL[]的构成相同,因此在图18中,将这些MotionR[]和MotionL[]统一作为Motion[]进行说明。
如图18所示,在进行放大演奏动画显示时所参照的Motion[]中的各个要素中定义有Time、RootPos[3]、MaxHandPos[3]、MinHandPos[3]以及WristPos[3]。
Time是表示演奏时的各帧开始的时间的变量。
RootPos[3]是显示部16所显示的结构物的起点的三维坐标(起点关节的三维坐标)。
MaxHandPos[3]是表示在视点移动时成为最右侧的手关节的三维坐标的变量。
MinHandPos[3]是表示在视点移动时成为最左侧的手关节的三维坐标的变量。
WristPos[3]是表示视点移动时的手腕关节的三维坐标的变量。
图19是表示视点移动时的描绘处理的流程的流程图。另外,在图9中说明了的主处理的步骤S1的数据的初始化/读入处理完成之后,继续进行描绘处理。
在步骤S121中,CPU11执行视点计算处理。视点计算处理的详细情况在图20中具体说明。
在步骤S122中,CPU11执行视点设定处理。
即,CPU11根据RAM13所存储的控制变量中所储存的高度方向的视场角(f0vy)、视场的中心坐标(Center[3])以及视点(Eye[3]),来设定显示部16显示的画面中的视点。
在步骤S123中,CPU11执行在图15中具体说明了的键盘显示处理。
在步骤S124中,CPU11执行在图16中具体说明了的右手腕显示处理。
在步骤S125中,CPU11执行在图16中具体说明了的左手腕显示处理。
图20是表示视点计算处理的流程的流程图。
在步骤S131中,CPU11从左右的显示对象的动画信息中取得x方向的最大值及最小值,并计算取得的最大值及最小值的中间值。
在步骤S132中,CPU11根据左右的结构数据的最大宽度、最小宽度,来计算视场的中心与视点之间的距离。
在步骤S133中,CPU11检索左右的显示对象的动画信息的既定数前后,取得x方向的最大值及最小值,并计算中间值。
在步骤S134中,CPU11将成为视场的中心的x坐标设定为中间值。
在步骤S135中,CPU11计算视场的宽度。
在步骤S136中,判断在步骤S131中取得的x方向的最大值及最小值是否收敛于在步骤S135中计算的视场的宽度(视场内)内。CPU11在该判断为是的情况下将处理转移到步骤S138,在该判断为否的情况下将处理转移到步骤S137。
在步骤S137中,CPU11重新计算视场的中心与视点之间的距离。
在步骤S138中,CPU11重新计算视场的宽度。
接着,对在演奏时插入演奏技巧显示的情况下所参照的数据的结构及处理的流程进行说明。另外,在放大演奏动画显示中进行视点移动,因此也将进行放大演奏动作显示时称为“视点移动时”。
图21是表示在进行包含演奏技巧显示的演奏动作显示的情况下所参照的控制变量的结构的图。另外,在使用图21所示的控制变量来进行包含演奏技巧显示的演奏动作显示的情况下,在演奏途中临近需要演奏技巧的部分时,自动地将手指放大并立体显示,以便能够确认手指的详细的动作。
在进行包含演奏技巧显示的演奏动作显示的情况下所参照的控制变量中,作为变量而定义有width、height、f0vy、Center[3]、Eye[3]、EyeVector[3]、Vertical[3]、Horizonal[3]、AutoAngleStatus、Start、Return、EyeVectorN[3]、EyeAngle、NoteR[]、StructR[]、MotionR[]、IndexR、NoteL[]、StructL[]、MotionL[]以及IndexL。
Width、height、f0vy、Center[3]、Eye[3]以及EyeVector[3]与图4所示的控制变量相同,因此省略说明。
Vertical[3]是表示视场的纵(画面高度)向的矢量的变量。
Horizonal[3]是表示视场的横(画面宽度)向的矢量的变量。
AutoAngleStatus是表示视点移动状态的变量。例如,在AutoAngleStatus为“0”的情况下表示未进行视点移动的状态(停止),在为“+”的情况下表示移动中,在为“-”的情况下表示复位中。
Start是表示开始演奏技巧的显示的时刻、即移动开始时刻的变量。
Return是表示演奏技巧结束而向通常的显示状态复位的时刻、即复位开始时刻的变量。
EyeVectorN[3]是表示视平线旋转面的法线矢量的变量。
EyeAngle是表示视平线旋转角的变量。
NoteR[]、StructR[]、MotionR[]、IndexR、NoteL[]、StructL[]、MotionL[]以及IndexL与图4所示的控制变量相同,因此省略说明。
图22是表示在进行包含演奏技巧显示的演奏动作显示的情况下所参照的演奏信息的结构的图。
如上述那样,演奏信息由表示右手的演奏信息的NoteR[]和表示左手的演奏信息的NoteL[]构成。
NoteR[]与NoteL[]的构成相同,因此在图22中,将这些NoteR[]和NoteL[]统一作为Note[]进行说明。
如图22所示,在Note[]中的各个要素中定义有Time、Gate、Pitch、Finger及FigTech[]。
Time是表示开始发声的时间的变量。
Gate是表示持续发声的时间的变量。
Pitch是表示所发声的声音的音高(频率)的变量。
Finger是表示手指编号的变量。手指编号是用于在演奏时识别手指的编号。
FigTech[]是表示演奏技巧标志的序列变量。FigTech[]中设置的要素数与演奏技巧中所定义的动作步骤的数相等。
图23是表示在进行包含演奏技巧显示的演奏动作显示的情况下所执行的演奏信息检索处理的流程的流程图。
另外,在本流程图中说明的Note[],在执行右手部分动作信息检索处理的情况下置换为NoteR[],在执行左手部分动作信息检索处理的情况下置换为NoteL[]。
步骤S 141至步骤S143的处理与在图12中说明了的步骤S41至步骤S43的处理相同,因此省略说明。
在步骤S144中,与步骤S44中的处理同样,CPU11将RAM13所存储的控制变量(handCtrl)所储存的演奏信息更新为接下来进行发声的演奏信息。
在步骤S145中,CPU11执行演奏技巧检索处理。演奏技巧检索处理在图24中具体说明。当该处理结束时,CPU11结束动作信息检索处理。
步骤S146至步骤S148的处理与在图12中说明了的步骤S45至步骤S47的处理相同,因此省略说明。
图24是表示在进行包含演奏技巧显示的演奏动作显示的情况下所执行的演奏技巧检索处理的流程的流程图。另外,在执行本流程图时,在RAM13中存储有图21所示的控制变量。
在步骤S151中,CPU11参照RAM13中所存储的控制变量(handCtrl)的AutoAngleStatus,判断是否进行视点移动。CPU11在该判断为是的情况下结束演奏技巧检索处理,在该判断为否的情况下将处理转移到步骤S152。
在步骤S152中,CPU11为了判断是否进行演奏技巧显示,而将作为检索对象的时间(检索时间)设定为从当前时刻起到规定时间后为止。
在步骤S153中,CPU11从RAM13中所存储的控制变量(handCtrl)中取得Note[]作为显示对象的演奏信息。
在步骤S154中,CPU11根据在步骤S153或步骤S160中取得的显示对象的演奏信息,判断是否取得了全部演奏信息。即,CPU11判断Note[]的后缀是否与ROM12中所存储的Note[]的后缀的最大值相等。CPU11在该判断为是的情况下结束演奏技巧检索处理,在该判断为否的情况下将处理转移到步骤S155。
在步骤S155中,CPU11判断发声时间是否为在步骤S152中设定的检索时间的范围内。CPU11在该判断为是的情况下将处理转移到步骤S156,在该判断为否的情况下结束演奏技巧检索处理。
在步骤S156中,CPU11参照图22所示的演奏信息的FigTech[],来判断演奏技巧标志是否为ON。CPU11在该判断为是的情况下将处理转移到步骤S157,在该判断为否的情况下将处理转移到步骤S160。
在步骤S157中,CPU11根据当前的视点状态以及与演奏技巧相对应的视点状态,来计算旋转角及旋转轴。
在步骤S158中,CPU11将开始演奏技巧显示的时刻(移动开始时刻)设定为发声时刻的规定时间前。即,CPU11对RAM13中所存储的控制变量的Start进行设定。
在步骤S159中,CPU11将从演奏技巧显示向通常演奏动作显示或放大演奏动作显示返回的时刻(复位开始时刻)设定为规定时间后。当该处理结束时,CPU11结束演奏技巧检索处理。即,CPU11对RAM13中所存储的控制变量的Return进行设定。
在步骤S160中,CPU11取得下一个演奏数据,将处理转移到步骤S154。
图25是表示在进行包含演奏技巧显示的演奏动作显示的情况下所执行的描绘处理的流程的流程图。另外,在图9中说明了的主处理的步骤S1的数据的初始化/读入处理完成之后,继续进行该描绘处理。此外,在开始该描绘处理时,CPU11也可以通过执行图20所示的视点计算处理,由此在演奏技巧显示时进行放大显示。
在步骤S161中,CPU11执行视点变更计算处理。视点变更计算处理的详细情况在图26中具体说明。
在步骤S162中,CPU11执行视点设定处理。
即,CPU11根据RAM13所存储的控制变量中所储存的高度方向的视场角(f0vy)、视场的中心坐标(Center[3])以及视点(Eye[3]),来设定显示部16显示的画面中的视点。
在步骤S163中,CPU11执行在图15中具体说明了的键盘显示处理。
在步骤S164中,CPU11执行在图16中具体说明了的右手腕显示处理。
在步骤S165中,CPU11执行在图16中具体说明了的左手腕显示处理。
图26是表示在进行包含演奏技巧显示的演奏动作显示的情况下所执行的视点变更计算处理的流程的流程图。另外,在图9中说明了的主处理的步骤S 1的数据的初始化/读入处理完成之后,继续进行该描绘处理。
在步骤S171中,CPU11参照RAM13中所存储的控制变量的AutoAngleStatus,来判断视点是否停止。具体地说,CPU11在RAM13所存储的控制变量的AutoAngleStatus的值为“0”的情况下判断为视点停止。CPU11在该判断为是的情况下将处理转移到步骤S172,在该判断为否的情况下将处理转移到步骤S178。
在步骤S172中,CPU11参照RAM13中所存储的控制变量的Start(移动开始时刻),来判断在图10的步骤S14中所更新的当前时刻是否超过了移动开始时刻。CPU11在该判断为是的情况下将处理转移到步骤S173,在该判断为否的情况下将处理转移到步骤S175。
在步骤S173中,CPU11通过使RAM13中所存储的控制变量的AutoAngleStatus成为“+”,由此将视点移动状态设定为移动中。此外,CPU11根据移动开始时刻和复位开始时刻来计算移动帧数,并存储到RAM13中。并且,CPU11使状态变量的初始值为0,并存储到RAM13中。
在步骤S174中,CPU11清除RAM13中所存储的控制变量的Start(移动开始时刻)。
在步骤S175中,CPU11参照RAM13中所存储的控制变量的Return(复位开始时刻),来判断在图10的步骤S14中所更新的当前时刻是否超过了复位开始时刻。CPU11在该判断为是的情况下将处理转移到步骤S176,在该判断为否的情况下结束视点变更处理。
在步骤S176中,CPU11通过使RAM13中所存储的控制变量的AutoAngleStatus成为“-”,由此将视点移动状态设定为复位中。此外,CPU11将状态变量的初始值作为在步骤S173中计算出的移动帧数,并存储到RAM13中。
在步骤S177中,CPU11清除RAM13中所存储的控制变量的Return(复位开始时刻)。
在步骤S178中,CPU11参照RAM13中所存储的控制变量的AutoAngleStatus,来判断是否为视点移动中。具体地说,CPU11在RAM13所存储的控制变量的AutoAngleStatus的值为“+”的情况下判断为视点移动中。CPU11在该判断为是的情况下将处理转移到步骤S179,在该判断为否的情况下将处理转移到步骤S183。
在步骤S179中,CPU11判断RAM13中所存储的状态变量是否超过RAM13中所存储的移动帧数。CPU11在该判断为是的情况下将处理转移到步骤S180,在该判断为否的情况下将处理转移到步骤S182。
在步骤S180中,CPU11使视线矢量在旋转面上旋转移动规定量。具体地说,CPU11进行运算,以使RAM13中所存储的控制变量的EyeVector[3]进行旋转移动。
在步骤S181中,CPU11使RAM13中所存储的状态变量的值增量。当步骤S181的处理结束时,CPU11结束视点变更处理。
在步骤S182中,CPU11将视点移动状态设定为视点停止。具体地说,CPU11使RAM13中所存储的控制变量的AutoAngleStatus成为“0”。此外,CPU11将状态变量从RAM13中清除。当步骤S182的处理结束时,CPU11结束视点变更处理。
在步骤S183中,CPU11参照RAM13中所存储的控制变量的AutoAngleStatus,来判断是否为视点复位中。具体地说,CPU11在RAM13中所存储的控制变量的AutoAngleStatus的值为“-”的情况下判断为视点移动中。CPU11在该判断为是的情况下将处理转移到步骤S184,在该判断为否的情况下结束视点变更处理。
在步骤S184中,CPU11使视线矢量在旋转面上反向旋转移动规定量。具体地说,CPU11进行运算,以使RAM13中所存储的控制变量的EyeVector[3]进行反向旋转移动。
在步骤S185中,CPU11使RAM13中所存储的状态变量的值减量。当步骤S185的处理结束时,CPU11结束视点变更处理。
根据以上那样的本实施方式的演奏动作显示装置1,CPU11根据RAM13中所存储的演奏信息的演奏技巧标志,来判断是否进行演奏技巧的显示,在判断为进行该演奏技巧的显示的情况下,与对应于不显示该演奏技巧的情况的图像的显示方式相比较,使与该演奏技巧相对应的图像的显示方式变化。
由此,演奏动作显示装置1在显示演奏技巧的情况下,通过使显示方式变化,能够进行对演奏者来说容易目视的演奏动作的显示。
尤其是,在演奏动作显示装置1中,CPU11在进行演奏技巧的显示的情况下将显示部16显示的结构数据进行放大显示。
由此,演奏动作显示装置1在与演奏技巧对应的情景下能够将手、手指进行放大显示,能够使演奏技巧的动作显示对演奏者来说更容易识别。此外,在对一系列的演奏动作进行再现时,使视场与动作区域相配合而进行尽可能大的显示,因此能够使动作更容易目视。
尤其是,在演奏动作显示装置1中,CPU11在进行演奏技巧的显示的情况下,使显示部16显示的结构数据以立体状态进行显示。
由此,演奏动作显示装置1在与演奏技巧对应的情景下能够将手、手指进行立体显示,与从正上方、正侧面进行演奏技巧的动作显示的情况相比较,对演奏者来说更容易识别。例如,由于相对于演奏技巧的动作显示而使角度等的显示状态变更,因此,尤其是即使对于初学者来说困难的动作,也能够进行容易目视、容易理解的显示。
另外,本发明并非限定于上述的实施方式,在能够实现本发明的目的的范围内的变形、改良等都包含于本发明中。
此外,在上述的实施方式中,应用本发明的演奏动作显示装置,以演奏动作显示装置1为例进行了说明,但并非特别限定于此。
例如,本发明能够普遍应用于具有键盘和演奏动作显示功能的电子乐器。具体地说,例如本发明能够应用于电子钢琴、电子风琴等。
上述的一系列的处理既能够通过硬件来执行,也能够通过软件来执行。
换言之,图1的构成仅为例示,而并非特别限定。即,演奏动作显示装置1具备将上述的一系列的处理作为整体来执行的功能即可,为了实现该功能而构建怎样的构成并非特别限定于图1的例子。
在通过软件来执行一系列的处理的情况下,构成该软件的程序从网络、记录介质安装到计算机等中。
该计算机也可以是组装到专用的硬件中的计算机。此外,计算机也可以是能够通过安装各种程序来执行各种功能的计算机。
另外,在本说明书中,对记录介质所记录的程序进行记述的步骤,当然包含沿着其顺序而时间序列地进行的处理,并且也包含不是时间序列地进行处理、而是并列或个别地执行的处理。
此外,在本说明书中,系统这一用语意味着由多个装置、多个构件等构成的整体的装置。
以上对本发明的实施方式进行了说明,但该实施方式仅为例示,而并非限定本发明的技术范围。本发明能够采取其他各种各样的实施方式,并且在不脱离本发明的主旨的范围内能够进行省略、置换等各种变更。这些实施方式、其变形包含在本说明书等所记载的发明的范围、主旨内,并且包含在专利请求的范围所记载的发明及与其等同的范围内。

Claims (15)

1.一种演奏动作显示装置,具备:
存储构件,存储(a)演奏信息,该演奏信息储存发声开始时间、发声持续时间、音高及使用的手指,(b)结构数据组,该结构数据组由多种结构数据及决定该结构数据彼此的相关性的结构相关数据构成,(c)动作信息,该动作信息表示成为对应于上述发声开始时间而显示多个上述结构数据时的起点的上述结构数据的信息;
判断构件,判断是否进行特定动作的显示;以及
显示构件,在根据上述存储构件所存储的上述演奏信息、上述动作信息及上述结构数据组使显示构件显示演奏动作图像,并且由上述判断构件判断为进行该特定动作的显示的情况下,使上述显示构件以第一显示方式来显示与该特定动作对应的演奏动作图像,使上述显示构件以与上述第一显示方式不同的第二显示方式显示与不显示该特定动作的情况对应的演奏动作图像。
2.如权利要求1所述的演奏动作显示装置,其中,
上述演奏信息进一步储存用于进行特定动作的显示的标志,
上述判断构件根据上述演奏信息的上述标志来判断是否进行上述特定动作的显示。
3.如权利要求1所述的演奏动作显示装置,其中,
上述显示构件为,在进行上述特定动作的情况下,将上述显示构件显示的结构数据进行放大显示。
4.如权利要求3所述的演奏动作显示装置,其中,
用于进行特定动作的显示的上述标志,包括表示难度的技巧标志,
上述显示构件为,在上述技巧标志表示规定值时,将上述显示构件显示的结构数据进行放大显示。
5.如权利要求1所述的演奏动作显示装置,其中,
上述显示构件为,在进行上述特定动作的情况下,将上述显示构件显示的结构数据以立体状态进行显示。
6.如权利要求5所述的演奏动作显示装置,其中,
用于进行特定动作的显示的上述标志,包含表示难度的技巧标志,
上述显示构件为,在上述技巧标志表示规定值时,将上述显示构件显示的结构数据以立体状态进行显示。
7.如权利要求1所述的演奏动作显示装置,其中,
上述多种结构数据是表示双手的手指、手及手腕的结构的数据,
上述显示构件根据这些表示双手的手指、手及手腕的结构的数据,将该双手的手指、手及手腕的图像显示在上述显示构件上。
8.如权利要求1所述的演奏动作显示装置,其中,
上述结构相关数据,是在将应该与各结构数据对应地显示的结构的图像与其他结构的图像连结地显示的情况下、表示该各结构数据彼此的连结关系的数据。
9.如权利要求1所述的演奏动作显示装置,其中,
上述结构数据分别具有应该显示的多边形上的各顶点的三维坐标、与由该结构数据显示的结构连结的其他结构的长度、表示该其他结构的X轴旋转角的变量、表示Y轴旋转角的变量及表示Z轴旋转角的变量,上述显示构件根据该结构数据来显示与上述显示构件对应的结构的图像。
10.如权利要求9所述的演奏动作显示装置,其中,
上述显示构件根据表示上述其他结构的X轴旋转角的变量、表示Y轴旋转角的变量及表示Z轴旋转角的变量,使上述多边形的各顶点的三维坐标各自的显示角度旋转,接着,执行使该显示角度旋转了的多边形的显示。
11.如权利要求1所述的演奏动作显示装置,其中,
上述显示构件还具有视场计算构件,该视场计算构件对上述显示部的显示画面上的视场的中心坐标及宽度进行计算。
12.如权利要求11所述的演奏动作显示装置,其中,
上述动作信息是应该显示的上述结构的图像中的起点的三维坐标,
上述视点计算构件具有:
视场中心及距离计算构件,基于上述存储构件所存储的上述结构数据组,根据所显示的结构的图像的最大宽度及最小宽度来计算视场中心坐标和视点的距离;
中间值计算构件,基于上述存储构件所存储的规定数的上述动作信息,根据所显示的动图像的最大值及最小值来计算中间值;以及
视场宽度计算构件,根据由上述视场中心及距离计算构件计算出的视场中心坐标及视点的距离以及由上述中间值计算构件计算出的中间值,来计算视场的宽度。
13.如权利要求12所述的演奏动作显示装置,其中,
上述判断构件还具有:
读出构件,依次读出上述存储构件所存储的演奏信息;以及
检索构件,对从由上述读出构件读出演奏信息的时刻起到规定时间之前的演奏信息中、进行上述特定动作的显示的演奏信息进行检索。
14.如权利要求13所述的演奏动作显示装置,其中,
上述显示构件还具有:
旋转角及旋转轴计算构件,在由上述检索构件对进行特定动作的显示的演奏信息进行了检索的情况下,根据当前的视点状态以及适合于进行上述特定动作的视点状态,来计算旋转角及旋转轴;以及
视场变更构件,根据由上述旋转角及旋转轴计算构件计算出的旋转角及旋转轴,使视场矢量旋转移动,并且根据该旋转移动了的视场矢量,使由上述视场计算构件计算出的视点中心坐标、视场宽度及视点距离中的至少一个进行变更。
15.一种演奏动作显示方法,是用于具有存储构件的演奏动作显示装置的方法,该存储构件存储:(a)演奏信息,该演奏信息储存发声开始时间、发声持续时间、音高及使用的手指;(b)结构数据组,该结构数据组由多种结构数据及决定该结构数据彼此的相关性的结构相关数据构成;以及(c)动作信息,该动作信息表示成为对应于上述发声开始时间而显示多个上述结构数据时的起点的上述结构数据的信息,
该演奏动作显示方法具有:
判断步骤,判断是否进行特定动作的显示;以及
显示步骤,在根据上述存储构件所存储的上述演奏信息、上述动作信息及上述结构数据组使显示构件显示演奏动作图像,并且通过上述判断步骤判断为进行该特定动作的显示的情况下,使上述显示构件以第一显示方式显示与该特定动作对应的演奏动作图像,使上述显示构件以与上述第一显示方式不同的第二显示方式显示与不显示该特定动作的情况对应的演奏动作图像。
CN201210420953.4A 2011-10-31 2012-10-29 演奏动作显示装置及方法 Active CN103093745B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011238333A JP2013097089A (ja) 2011-10-31 2011-10-31 演奏動作表示装置、方法及びプログラム
JP2011-238333 2011-10-31

Publications (2)

Publication Number Publication Date
CN103093745A true CN103093745A (zh) 2013-05-08
CN103093745B CN103093745B (zh) 2015-04-01

Family

ID=48171040

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210420953.4A Active CN103093745B (zh) 2011-10-31 2012-10-29 演奏动作显示装置及方法

Country Status (3)

Country Link
US (1) US8895829B2 (zh)
JP (1) JP2013097089A (zh)
CN (1) CN103093745B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108281129A (zh) * 2018-03-14 2018-07-13 河海大学常州校区 基于processing的midi键盘可视化方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8766077B2 (en) * 2012-02-06 2014-07-01 Casio Computer Co., Ltd. Music playing movement display control device, music playing movement control method and computer readable medium
JP2018146718A (ja) * 2017-03-03 2018-09-20 ヤマハ株式会社 教習装置、教習プログラムおよび教習方法
JP6638674B2 (ja) * 2017-03-03 2020-01-29 ヤマハ株式会社 教習装置、教習プログラムおよび教習方法
JP7035486B2 (ja) * 2017-11-30 2022-03-15 カシオ計算機株式会社 情報処理装置、情報処理方法、情報処理プログラム、及び、電子楽器
US11508344B2 (en) * 2017-12-27 2022-11-22 Sony Corporation Information processing device, information processing method and program
US10810984B2 (en) * 2018-03-29 2020-10-20 Kawai Musical Instruments Manufacturing Co., Ltd. Fingering display device and fingering display program
US11087636B2 (en) * 2018-04-20 2021-08-10 Xingxin Liu Lights-guided piano learning and teaching apparatus, and method
CN113674565B (zh) * 2021-08-25 2024-04-26 桂林智神信息技术股份有限公司 一种用于钢琴教学的教学系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11126071A (ja) * 1997-10-21 1999-05-11 Casio Comput Co Ltd 演奏運指装置
CN101226739A (zh) * 2007-01-17 2008-07-23 雅马哈株式会社 用于人类演奏者的乐器和自动伴奏系统
CN101630503A (zh) * 2008-07-17 2010-01-20 褚晓帅 具有音圆标识的键盘乐器
US20100064880A1 (en) * 2008-09-12 2010-03-18 Yamaha Corporation Electronic percussion instrument having groupable playing pads

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58192671U (ja) * 1982-06-19 1983-12-21 ヤマハ株式会社 運指表示装置
JPH03184076A (ja) * 1989-12-14 1991-08-12 Casio Comput Co Ltd 演奏ナビゲート装置
US5585583A (en) * 1993-10-14 1996-12-17 Maestromedia, Inc. Interactive musical instrument instruction system
US5690496A (en) * 1994-06-06 1997-11-25 Red Ant, Inc. Multimedia product for use in a computer for music instruction and use
JP3895014B2 (ja) * 1997-09-19 2007-03-22 パイオニア株式会社 映像再生装置およびカラオケ装置
JP3743231B2 (ja) * 1999-11-26 2006-02-08 ヤマハ株式会社 曲データ表示制御装置及び方法
JP3968975B2 (ja) * 2000-09-06 2007-08-29 ヤマハ株式会社 運指生成表示方法、運指生成表示装置および記録媒体
JP3528051B2 (ja) * 2001-07-18 2004-05-17 カシオ計算機株式会社 演奏動作表示装置、及び記録媒体
JP3890936B2 (ja) * 2001-08-13 2007-03-07 カシオ計算機株式会社 演奏教習装置及び演奏教習処理のプログラム
US7009100B2 (en) * 2002-08-20 2006-03-07 Casio Computer Co., Ltd. Performance instruction apparatus and performance instruction program used in the performance instruction apparatus
JP4054912B2 (ja) * 2002-12-25 2008-03-05 カシオ計算機株式会社 運指指示装置及び運指指示処理プログラム
US6982375B2 (en) * 2003-06-06 2006-01-03 Mcgregor Rob Musical teaching device and method
JP4506175B2 (ja) * 2004-01-09 2010-07-21 ヤマハ株式会社 運指表示装置及びそのプログラム
US7288712B2 (en) * 2004-01-09 2007-10-30 Yamaha Corporation Music station for producing visual images synchronously with music data codes
JP2005265903A (ja) * 2004-03-16 2005-09-29 Yamaha Corp 鍵盤楽器
US7767898B2 (en) * 2006-04-10 2010-08-03 Roland Corporation Display equipment and display program for electronic musical instruments
US7674965B2 (en) * 2007-02-23 2010-03-09 Victor Mataele Method and system for music notation
US8338684B2 (en) * 2010-04-23 2012-12-25 Apple Inc. Musical instruction and assessment systems
US20130068086A1 (en) * 2011-09-19 2013-03-21 ION Audio, LLC Piano learning system for tablet and touchscreen devices
US8766077B2 (en) * 2012-02-06 2014-07-01 Casio Computer Co., Ltd. Music playing movement display control device, music playing movement control method and computer readable medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11126071A (ja) * 1997-10-21 1999-05-11 Casio Comput Co Ltd 演奏運指装置
CN101226739A (zh) * 2007-01-17 2008-07-23 雅马哈株式会社 用于人类演奏者的乐器和自动伴奏系统
CN101630503A (zh) * 2008-07-17 2010-01-20 褚晓帅 具有音圆标识的键盘乐器
US20100064880A1 (en) * 2008-09-12 2010-03-18 Yamaha Corporation Electronic percussion instrument having groupable playing pads

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108281129A (zh) * 2018-03-14 2018-07-13 河海大学常州校区 基于processing的midi键盘可视化方法
CN108281129B (zh) * 2018-03-14 2021-11-16 河海大学常州校区 基于processing的midi键盘可视化方法

Also Published As

Publication number Publication date
JP2013097089A (ja) 2013-05-20
US8895829B2 (en) 2014-11-25
CN103093745B (zh) 2015-04-01
US20130104724A1 (en) 2013-05-02

Similar Documents

Publication Publication Date Title
CN103093745B (zh) 演奏动作显示装置及方法
US7910818B2 (en) System and method for providing an edutainment interface for musical instruments
US6659873B1 (en) Game system, game device capable of being used in the game system, and computer-readable memory medium
CN103354088A (zh) 演奏动作显示控制装置及方法
EP1122703A9 (en) Amusement system having typing practice function, typing practice system, and computer readable storage medium
US8360836B2 (en) Gaming device, game processing method and information memory medium
JP6216120B2 (ja) ゲームプログラム、ゲーム装置、ゲームシステム、および、ゲーム処理方法
JP2007293191A (ja) 音出力プログラムおよび音出力装置
US7062157B2 (en) Method and system for modifying a displayed symbolic image based on the accuracy of an input geometric shape
WO2006075495A1 (ja) ゲーム装置、ゲーム制御方法及び情報記憶媒体
US20070279396A1 (en) Game program and game apparatus
EP1132443A2 (en) Method for producing water based coating compositions
JP5305765B2 (ja) プログラム及びゲームシステム
Moseley et al. Nintendo's Art of Musical Play
JP5558144B2 (ja) ゲーム装置、ゲーム装置の制御方法、及びプログラム
JP5753867B2 (ja) ゲーム装置、ゲーム装置の制御方法、及びプログラム
JP4017114B2 (ja) 対局ゲーム装置、及び対局ゲームプログラム
CN103379944A (zh) 游戏装置、游戏装置的控制方法、程序以及信息存储介质
JP5232890B2 (ja) ゲーム装置、ゲーム装置の制御方法、及びプログラム
JP2004325984A (ja) ゲームbgm生成プログラム、ゲームbgm生成方法およびゲーム装置
JP5232891B2 (ja) ゲーム装置、ゲーム装置の制御方法、及びプログラム
JP5789035B2 (ja) ゲーム装置、ゲーム装置の制御方法、及びプログラム
JP2012205754A (ja) 遊戯装置、遊戯装置の制御方法、及びプログラム
JP5670121B2 (ja) ゲーム装置、及びプログラム
JP6069841B2 (ja) 演奏動作表示装置、方法及びプログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant