WO2007063805A1 - オブジェクト選択装置、オブジェクト選択方法、情報記録媒体、ならびに、プログラム - Google Patents

オブジェクト選択装置、オブジェクト選択方法、情報記録媒体、ならびに、プログラム Download PDF

Info

Publication number
WO2007063805A1
WO2007063805A1 PCT/JP2006/323599 JP2006323599W WO2007063805A1 WO 2007063805 A1 WO2007063805 A1 WO 2007063805A1 JP 2006323599 W JP2006323599 W JP 2006323599W WO 2007063805 A1 WO2007063805 A1 WO 2007063805A1
Authority
WO
WIPO (PCT)
Prior art keywords
displayed
order
objects
screen
viewpoint
Prior art date
Application number
PCT/JP2006/323599
Other languages
English (en)
French (fr)
Inventor
Yasuhiro Kawabata
Original Assignee
Konami Digital Entertainment 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 Konami Digital Entertainment Co., Ltd. filed Critical Konami Digital Entertainment Co., Ltd.
Priority to CN2006800448613A priority Critical patent/CN101317151B/zh
Priority to KR1020087011318A priority patent/KR100932592B1/ko
Priority to DE602006018647T priority patent/DE602006018647D1/de
Priority to US12/095,497 priority patent/US20090309872A1/en
Priority to EP06833403A priority patent/EP1956471B1/en
Publication of WO2007063805A1 publication Critical patent/WO2007063805A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • G06T15/405Hidden part removal using Z-buffer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts

Definitions

  • Object selection device object selection method, information recording medium, and program
  • the present invention relates to an object selection device, an object selection method, and a computer-readable recording program that realizes these on a computer, so that objects displayed in a predetermined order can be easily selected.
  • Information recording medium and the program
  • Patent Document 1 Japanese Patent No. 3497860
  • a viewpoint and a projection plane are assumed in a virtual space.
  • the projection plane is arranged at a predetermined distance from the viewpoint, and is the direction of the normal force that hangs from the viewpoint onto the projection plane.
  • Rendering is performed by perspective projection that associates the position at which the tangential force half line intersects the projection plane with the display position outside the object.
  • the object is sorted according to the distance between the viewpoint and the object (the area in which this information is stored is called "Z buffer"). It is common to draw a situation where near objects hide distant objects by drawing in the frame buffer.
  • the half line extending from the viewpoint is projected to a point on the projection plane, and the surface of a cone (cone, pyramid, etc.) having the viewpoint as the apex is located on the bottom surface of the cone on the projection plane. Projected to the boundary of the corresponding figure (circumference, elliptical circumference, polygonal edge, etc.).
  • the order in which the cursor moves may be different from the one assumed by the user.
  • the user's selection becomes less intuitive.
  • the selection may be complicated or an operation error may occur.
  • the present invention solves such a problem, and an object selection device, an object selection method, and an object selection method that make it possible to easily select objects displayed in a predetermined order.
  • a computer-readable information recording medium recording a program realized by a computer, and means for solving the problems aimed at providing the program
  • An object selection device includes a display unit, a position instruction input reception unit, and an output unit, and is configured as follows.
  • the display unit displays on the screen objects that are ordered in a predetermined order, and displays the previous object in the order and the subsequent object in the order, the previous object Displays to hide the subsequent object.
  • the predetermined order when using three-dimensional computer graphics, an order in which the distance to the viewpoint power object arranged in the virtual space is short can be adopted.
  • the position instruction input accepting unit accepts a position instruction input for designating a position of!
  • a method of specifying the position a method of tapping a desired position on the screen with a pen or a finger using a touch panel, or clicking after moving the cursor displayed on the screen with a mouse, a keyboard, a direction key or the like
  • Various methods can be applied, such as the method of determining the position with the button and the enter button.
  • the output unit includes, among objects displayed on the screen,
  • a figure having a fixed shape such as a circle, a rectangle, or a square centering on the position of a designated point may be adopted, and an aspect described later may be adopted.
  • the user can easily select objects displayed in a predetermined order.
  • the object is an object arranged in the virtual space, and the previous object in the order has a viewpoint arranged in the virtual space more than the subsequent object in the order. It can be configured as follows.
  • a general three-dimensional computer graph status technique can be used. That is, using the Z buffer method, It draws in the image buffer in order from the data, and draws the state of concealment between the objects.
  • the output unit determines the direction of a half line arranged in the virtual space and extending from the viewpoint based on the position specified in the position instruction input.
  • the half line is used as an index for selecting an object, and the half line is expressed as a point on the screen.
  • the output unit includes, among objects arranged in the virtual space,
  • the half straight line functions like, for example, “sighting” in a gun-shooting game, and the half straight line where the line of sight extends is selected first. .
  • (b) is adopted when there is no object on the "sight". If there is an object that crosses a three-dimensional area around the half line, the object's The one closest to the viewpoint is selected. This three-dimensional area is associated with the above-mentioned two-dimensional area, and when this three-dimensional area is displayed on the screen as a force, the display range becomes the above-described two-dimensional area. It is typical to adopt one.
  • a half-line is arranged in the virtual space, and a human is pointed to something by considering whether or not the object is displayed so as to overlap the area including the half-line drawing destination. This makes it possible to express ambiguity when showing, and to select objects according to human intuition.
  • the object selection device of the present invention can be configured as follows.
  • the three-dimensional region is a cone having the viewpoint as a vertex and including the half line, and the position with respect to the half line is fixed, and the display unit includes the half line and the cone. An image viewed from the viewpoint is further displayed on the screen.
  • the tip on which a cone such as a pyramid or cone is projected is adopted as a two-dimensional region for determining whether or not the force is displayed by overlapping objects.
  • the object selection device of the present invention further includes a range order storage unit and can be configured as follows.
  • the range order storage unit includes an object arranged in the virtual space, a range in which the object is displayed on the screen, a rank order of the object and the viewpoint, Are stored in association with each other.
  • the range order storage unit stores the area occupied by the object in the screen, and when the object is hidden, the area closest to the viewpoint occupies the overlapping area.
  • the position of the object in the Z buffer array index, etc.
  • the output unit includes, among objects arranged in the virtual space,
  • the information about the area where the object is displayed in the screen is referred to, instead of obtaining the intersection of the half line, the cone, and the object using the three-dimensional operation in the virtual space.
  • the object of the selection result can be easily determined.
  • the range order storage unit is an image buffer, and the display unit displays objects arranged in the virtual space in the order of distance from the viewpoint.
  • the image buffer By drawing in the image buffer as a pixel value the order of proximity to the viewpoint, the range in which the object is displayed on the screen, the object, and the viewpoint are displayed in the range order storage unit. It is possible to configure so that the order of closeness is stored in association with each other.
  • an image buffer for storing an image that is not necessarily displayed immediately such as a double buffering technique
  • a double buffering technique is widely used.
  • an appropriate conversion to the texture of the polygon that forms the outline of the object depending on the distance from the light source 'viewpoint and the angle to the light source' view point, etc.
  • the “pixel value” of the object that is “drawn” in such a non-displayed image buffer is applied. As a result, the order of closeness to the viewpoint is adopted.
  • the position where the half line should be drawn in the non-displayed image buffer is obtained, and the position is determined. If you look at the pixel values that have already been drawn, you can see which object crosses the half line.
  • the present invention relates to a preferred embodiment of the above-described invention. According to the present invention, by drawing an object in a non-displayed image buffer, a force line or cone can be crossed with the object. Can be easily determined.
  • the output unit crosses the half line and the object according to an angle formed by the direction vector of the half line and the position vector of the object with respect to the viewpoint. It can also be configured to determine the intersection of the cone and the object.
  • the power of determining the crossing of a half line or a cone and an object by managing the information on the order of the proximity between the area where the object is drawn and the viewpoint.
  • the determination is performed by calculating the crossing relationship of the figures arranged in the original space.
  • the object selection device of the present invention can be configured to include a direction instruction input receiving unit and a direction changing unit instead of the position instruction input receiving unit.
  • the direction instruction input accepting unit accepts an input of a direction instruction input that designates the direction of the half line in the virtual space.
  • the direction instruction input is input using, for example, a cursor key or an arrow key, and the position of a half line (actually a "point") displayed on the screen is moved up, down, left and right. So given.
  • the half-line is always coincident with a vertical line that hangs from the viewpoint to the projection plane (this vertical line is the central direction of the visual field, that is, the line of sight), and the line of sight is moved in the virtual space.
  • the instruction input can also be adopted as a direction instruction input.
  • the direction change unit in the direction specified in the direction instruction input accepted input, The direction of the cone is changed by changing the direction of the half line.
  • the output unit uses a direction that is a half line arranged in the virtual space and is changed by the direction changing unit as a direction of the half line extending from the viewpoint.
  • the object output by the output unit as a selection result can be configured such that the distance of the viewpoint power is equal to or less than a predetermined threshold.
  • An object selection method is executed by an object selection device including a display unit, a position instruction input reception unit, and an output unit, and includes a display process, a position instruction input reception process, and an output process. And is configured as follows.
  • the display unit displays the objects ordered in a predetermined order on the screen, and displays the previous object and the subsequent object in the order in the order.
  • the previous object is displayed so as to hide the subsequent object.
  • the position instruction input receiving unit receives a position instruction input for designating the position of! / And the displacement force on the screen.
  • the output unit includes, among objects displayed on the screen,
  • a program according to another aspect of the present invention is configured to cause a computer to function as the object selection device described above and to cause the computer to execute the object selection method described above.
  • the program of the present invention can be recorded on a computer-readable information storage medium such as a compact disk, flexible disk, hard disk, magneto-optical disk, digital video disk, magnetic tape, and semiconductor memory.
  • a computer-readable information storage medium such as a compact disk, flexible disk, hard disk, magneto-optical disk, digital video disk, magnetic tape, and semiconductor memory.
  • the above program can be distributed and sold via a computer communication network independently of the computer on which the program is executed.
  • the information storage medium can be distributed and sold independently of the computer.
  • an object selection device, an object selection method, and a program for realizing these on a computer are recorded so that objects displayed in a predetermined order can be easily selected.
  • the computer-readable information recording medium and the program can be provided.
  • FIG. 1 is a schematic diagram showing a schematic configuration of a typical information processing apparatus in which an object selection apparatus of the present invention is realized.
  • FIG. 2 is an explanatory diagram showing the appearance of the controller.
  • FIG. 3 is an explanatory diagram showing a schematic configuration of an object selection device according to the present embodiment.
  • FIG. 4 is an explanatory diagram showing a state of objects arranged in a virtual space.
  • Figure 5 Shows the control flow of object selection processing executed by the object selection device It is a flowchart.
  • FIG. 6 is an explanatory diagram showing a state when the screen is displayed by a frame buffer in a certain state.
  • FIG. 7 is an explanatory diagram showing a state of information stored in an image buffer.
  • FIG. 1 is a schematic diagram showing a schematic configuration of a typical information processing apparatus that performs the function of the object selection device of the present invention by executing a program. This will be described below with reference to this figure.
  • the information processing apparatus 100 includes a CPU (Central Processing Unit) 101, a ROM 102, a RAM (Random Access Memory) 103, an interface 104, a controller 105, an external memory 106, and an image processing unit 107.
  • the CPU 101 controls the overall operation of the information processing apparatus 100, is connected to each component, and exchanges control signals and data.
  • the CPU 101 uses an arithmetic logic unit (ALU) (not shown), an arithmetic operation such as addition / subtraction / division / division, logical sum, logical product, etc. for a storage area called a register (not shown) that can be accessed at high speed.
  • ALU arithmetic logic unit
  • logical operations such as logical negation, bit operations such as bit sum, bit product, bit inversion, bit shift, and bit rotation can be performed.
  • the CPU 101 itself is configured and equipped with a coprocessor so that saturation operations such as addition, subtraction, multiplication, and division for multimedia processing and trigonometric functions can be performed at high speed.
  • the ROM 102 records an IPL (Initial Program Loader) that is executed immediately after the power is turned on. By executing this, the program recorded on the DVD-ROM is read to the RAM 103 and the CPU 101 Execution starts.
  • the ROM 102 stores an operating system program and various types of data necessary for operation control of the entire information processing apparatus 100.
  • the RAM 103 is for temporarily storing data and programs, and holds programs and data from which the DVD-ROM power is also read, and other data necessary for game progress and chat communication.
  • the CPU 101 provides a variable area in the RAM 103 and performs an arithmetic operation by directly applying an ALU to the value stored in the variable, or stores the value stored in the RAM 103 in a register. Performs operations such as performing an operation on the register and writing the operation result back into the memory.
  • the controller 105 connected via the interface 104 receives an operation input performed when the user executes the game.
  • FIG. 2 is an explanatory view showing the external appearance of the controller 105. Hereinafter, description will be given with reference to this figure.
  • a ⁇ button 201 On the left side of the controller 105, a ⁇ button 201, an I button 202, a ⁇ button 203, and a ⁇ button 204 are used to perform an operation input indicating up, down, left, and right.
  • buttons 205 and 207 used for inputting instructions such as menu display
  • buttons 207 and 207 used for inputting instructions such as menu display
  • a ro button 208 used for inputting other instructions is arranged.
  • the ANALOG button 211 for instructing the stop and the indicator 212 for displaying whether the analog input is valid or invalid are arranged.
  • joysticks 213 and 214 for inputting instructions with a size in a direction not limited to up, down, left, and right are arranged at the lower center.
  • an L1 button 215, an L2 button 216, an R1 button 217, and an R2 button 218 that can be used for inputting various instructions are disposed above.
  • Each button 201-208, 215-218 of the controller 105 is equipped with a pressure sensor, When analog input is enabled, it is possible to detect whether the displacement button is pressed or not, and the pressure level of the user's pressing operation is 256 steps from 0 to 255. Can be obtained at
  • the joysticks 213 and 214 of the controller 105 can detect a key in which strain gauges are provided and how much they are bent in which direction.
  • the external memory 106 which is detachably connected via the interface 104, has data indicating game play status (past results, etc.), game progress data, and network competition.
  • the chat communication log data is stored in a rewritable manner. The user can record these data in the external memory 106 as appropriate by inputting an instruction via the controller 105.
  • the DVD-ROM loaded in the DVD-ROM drive 108 stores a program for realizing the game and image data and sound data associated with the game.
  • the DVD-ROM drive 108 Under the control of 01, the DVD-ROM drive 108 performs a reading process on the DVD-ROM loaded in the DVD-ROM drive 108, reads out necessary programs and data, and these are temporarily stored in the RAM 103 or the like.
  • the image processing unit 107 performs cache processing on data read from the DVD-ROM by an image arithmetic processor (not shown) included in the CPU 101 and the image processing unit 107, and then processes the processed data.
  • the data is recorded in a frame memory (not shown) included in 107.
  • the image information recorded in the frame memory is converted into a video signal at a predetermined synchronization timing and output to a monitor (not shown) connected to the image processing unit 107.
  • various image displays are possible.
  • the image calculation processor can execute a two-dimensional image overlay calculation, a transparency calculation such as ⁇ -plending, and various saturation calculations at high speed.
  • Polygon information arranged in the virtual three-dimensional space and added with various texture information is rendered by the ⁇ buffer method, and the polygon arranged in the virtual three-dimensional space from the predetermined viewpoint position is rendered. It is also possible to execute a calculation at a high speed to obtain a rendering image viewed from a predetermined line of sight.
  • the CPU 101 and the image arithmetic processor cooperate to operate the character shape.
  • the character string can be drawn as a 2D image in the frame memory, or drawn on the surface of each polygon.
  • the NIC 109 is used to connect the information processing apparatus 100 to a computer communication network (not shown) such as the Internet, and is used when configuring a LAN (Local Area Network).
  • a computer communication network such as the Internet
  • a cable modem or the like for connecting to the Internet, and an interface (not shown) for interfacing these with the CPU 101 are configured.
  • the audio processing unit 110 converts the audio data that has also been read from the DVD-ROM power into an analog audio signal, and outputs the analog audio signal from a speaker (not shown) connected thereto.
  • a speaker not shown
  • sound effects and music data to be generated during the progress of the game are generated, and the corresponding sound is output from the speaker.
  • the audio processing unit 110 converts the MIDI data into PCM data with reference to the sound source data included in the audio data. If the compressed audio data is in ADPCM format or Ogg Vorbis format, it is expanded and converted to PCM data.
  • the PCM data can be output as audio by performing DZA (Digital / Analog) conversion at the timing corresponding to the sampling frequency and outputting it to the speaker.
  • DZA Digital / Analog
  • a microphone 111 can be connected to the information processing apparatus 100 via the interface 104.
  • the analog signal from the microphone 111 is subjected to AZD conversion at an appropriate sampling frequency so that processing such as mixing in the audio processing unit 110 can be performed as a PCM format digital signal.
  • the information processing apparatus 100 uses a large-capacity external storage device such as a hard disk, and has the same function as a DVD-ROM or the like mounted in the ROM 102, RAM 103, external memory 106, or DVD-ROM drive 108. It may be configured to fulfill
  • the information processing apparatus 100 described above performs image processing that displays a force virtual space, which is equivalent to a so-called “video game apparatus for consumers”.
  • the present invention can be realized. Therefore, the present invention can be realized on various computers such as a mobile phone, a portable game device, a karaoke device, and a general business computer.
  • FIG. 3 is an explanatory diagram showing a schematic configuration of the object selection device according to the present embodiment.
  • the object selection device 301 includes an object storage unit 302, a Z buffer 303, a frame buffer 304, an image buffer 305, a display unit 306, an output unit 307, a direction instruction input reception unit 308, and a direction.
  • a change unit 309, a determination instruction input reception unit 310, and a determination unit 311 are provided.
  • the object storage unit 302 stores the position, orientation, polygon information, texture information of an object stored in the virtual space, a force representing an object representing a half line extending from the viewpoint (hereinafter referred to as “half line object”), Attribute information indicating the force that is an object that represents a cone with the viewpoint at the apex (hereinafter referred to as “cone object”), and the other force that is a normal object (hereinafter also referred to as “general object”) Is an area for storing. In storing the object in the area, a known three-dimensional object management technique can be employed.
  • one cone object is one that moves in the virtual space in conjunction with the half-line object, and the shape of the cone object is Use an infinitely large cone with a constant angle at the apex.
  • the Z buffer 303 is an array in which the addresses in which general objects are stored in the object storage unit 302 are sorted using the distance from the viewpoint as a key. Therefore, the sequence is constant By scanning in the direction of, it is possible to access general objects in order of distance from the viewpoint. By scanning in the opposite direction, it is possible to access general objects in order from the viewpoint.
  • the object storage unit 302 and the Z buffer 303 are secured in the RAM 103.
  • the frame buffer 304 is an area used when the display unit 306 displays a view of the virtual space from a viewpoint on a monitor connected to the image processing unit 107.
  • the image processing unit 107 includes a Z buffer. Scan 303 in order of increasing viewpoint power, and draw general objects in the frame buffer by perspective projection based on position information, light source information, texture information, and the like. The information drawn in the frame buffer is displayed on the monitor screen according to the vertical sync signal.
  • the image buffer 305 is a frame buffer that is not actually intended to be displayed on the screen (may be displayed).
  • the image buffer 305 uses Z as the color (pixel value) of the object.
  • the array index of the object in the buffer 303 (this corresponds to the rank of the nearness (distance) from the viewpoint) is adopted. Therefore, if a position in the screen is designated, it is immediately determined from the corresponding pixel value of the image buffer 305 whether the object can be seen at that position. Therefore, the image buffer 305 functions as a range order storage unit.
  • the frame buffer 304 and the image buffer 305 typically use a power area secured in the RAM 103 and a storage area that is provided in the image processing unit 107 and that can be accessed at high speed. You can do it.
  • FIG. 4 is an explanatory diagram showing a state of objects arranged in the virtual space. Hereinafter, description will be given with reference to this figure.
  • a cubic object 402, a spherical object 403, and a triangular pyramid object 404 are arranged as general objects.
  • a half-line object 406 extending from the viewpoint 405 and a cone-shaped cone object 407 having this as a central axis are also arranged.
  • a virtual projection plane 408 is also arranged in the virtual space 401, and each object is displayed on the screen.
  • the coordinates displayed on the surface are determined by the position of the intersection where the line connecting the object and the viewpoint 405 intersects the projection plane 408.
  • Such a projection technique is called perspective projection.
  • the cube object 402, the sphere object 403, and the triangular pyramid object 404 are arranged in order from the viewpoint 405.
  • FIG. 5 is a flowchart showing a flow of control of object selection processing executed by the object selection device 301.
  • FIG. 5 is a flowchart showing a flow of control of object selection processing executed by the object selection device 301.
  • the CPU 101 stores and initializes the information of the general object, the half-line object, and the cone object arranged in the virtual space in the object storage unit 302 (step S1). S501).
  • the CPU 101 registers the addresses of the general objects in the Z buffer 303 (step S502), and sorts the Z buffer 303 according to the distance from the viewpoint 405 of the object pointed to by the address (Ste S503). For example, if you sort in ascending order,
  • the 0th element of the array is the cube object 402
  • the first element of the array is a spherical object 403
  • the second element of the array is the triangular pyramid object 404
  • the image processing unit 107 refers to the Z buffer 303 and the object storage unit 302, and displays the general objects in order of increasing viewpoint 405 power ( In this example, the array index is scanned from 2 to 0 and drawn in the frame buffer 304 in the order of the triangular pyramid object 404, the spherical object 403, and the cubic object 402 (step S505).
  • the normal 3D graphics generation processing is performed by referring to the position, orientation, and texture information of the general object stored in the object storage unit 302 as well as the position of the viewpoint 405 and the position of the light source. Done.
  • the image processing unit 107 refers to the object storage unit 302 and draws the half-line object 406 and the cone object 407 in the frame buffer 304 (step S506).
  • the semi-line object 406 and the cone object 407 may be displayed in a semi-transparent color, or may be displayed using a dotted line only around the cone object 407. it can.
  • a sign such as a cross line may be displayed.
  • the image information stored in the frame buffer 304 in this way is actually displayed on the monitor connected to the image processing unit 107 using the vertical synchronization interrupt as a unit of time.
  • FIG. 6 is an explanatory diagram showing a state in which screen display is performed by the frame buffer 304 in this state.
  • a description will be given with reference to FIG.
  • a cubic object 402 As shown in the figure, a cubic object 402, a spherical object 403, and a triangular pyramid object 404 are displayed in the screen 601 as general objects.
  • a crosshair 602 and a cone object 407 for making the direction of the half-line object 406 stand out are displayed as other objects.
  • the cone object 407 is a force that is displayed with a dotted line only around it.
  • a general object that crosses the cone object 407 using a translucent color is adopted. It may be possible to see through the tattoo.
  • the image processing unit 107 refers to the Z buffer 303 and the object storage unit 302, and in general, in order from the viewpoint 405.
  • the objects are drawn in the image buffer 305 (in this example, the array index is shifted from 2 to 0 in the order of the triangular pyramid object 404, the spherical object 403, and the cubic object 402) (step S508).
  • an array index is employed as the pixel value. That is, in this example, the triangular pyramid object 404 is drawn with a pixel value of 2, the sphere object 403 has a pixel value of 1, and the cube object 402 has a pixel value of 0, respectively.
  • This number is limited by setting an upper limit on the number of general objects drawn in the image buffer 305 or by setting an upper limit on the distance from the viewpoint 405 of the general objects.
  • the image buffer 305 is not intended to be actually displayed on the screen, even if the frame buffer is 800 X 600 dots, it is not necessary to have the same size as this, for example, 400 X It is also possible to reduce / J size such as 300 dots, 200 X 150 dots, 100 X 75 dots. In this way, since the size of the image buffer 305 can be reduced, the use efficiency of the RAM 103 can be increased and the drawing time in the image buffer 305 can be suppressed.
  • FIG. 7 is an explanatory diagram showing the state of information stored in the image buffer 305. Hereinafter, description will be given with reference to this figure.
  • the image buffer 305 is a pixel array having a shape corresponding to the screen (typically, the dots on the screen are reduced), and the triangular pyramid object 404 has a pixel value of 2
  • the object 403 has a pixel value of 1 and the cubic object 402 has a pixel value of 0. In other areas, a pixel value of 255 is written as the background color for distance.
  • the image processing unit 107 functions as the display unit 306 in cooperation with the RAM 103 and the like under the control of the CPU 101.
  • the image buffer prepared in the RAM 103 functions as a range order storage unit.
  • the image processing unit 107 obtains coordinates in the image buffer 305 when the half-line object 406 is drawn in the image buffer 305 under the control of the CPU 101 (step S509).
  • a perspective projection technique may be used.
  • step S510 the pixel value of the coordinate in the image buffer 305 is acquired, and it is determined whether or not the value is a distance background color (step S510).
  • the pixel value is a distance background color If so (step S510; No), the address of the object obtained by adopting the pixel value as the array index of the Z buffer 303 is output to the selection result area prepared in the RAM 103 (step S511).
  • step S510 when the value is the background color for distance (step S510; Yes), the image processing unit 107 assumes that the cone object 407 is drawn in the image buffer 305 under the control of the CPU 101. The area in the image buffer 305 is obtained (step S512).
  • the shape of this region is a circle or an ellipse.
  • the shape of this region is a quadrangle. As for the shape of this region, various modifications will be described later.
  • the distance background color is substituted into the temporary pixel value area prepared in the RAM 103 (step S513), and the following processing is performed for each of the pixels included in the area in the image buffer 305. Repeat (Step S514 to Step S517).
  • step S515 it is determined whether or not the pixel value of the current pixel is smaller than that stored in the temporary pixel value area (step S515). If so (step S515; Yes), the temporary pixel value area The current pixel value is substituted into (Step S516), and the process is repeated for other pixels (Step S514 to Step S517). On the other hand, if not (step S515; No), the process is repeated for other pixels (step S514 to step S517).
  • step S514 to step S517 it is determined whether or not the value stored in the temporary pixel value region is the distance background color (step S518), Otherwise (step S518; No), the process proceeds to step S511. If so (step S518; Yes), the address 0 is output to the selection result area (step S519), indicating that the selection result is “none”.
  • the processing performed in steps S514 to S517 is the smallest of the pixels included in the region. That is, the general object that should be drawn in the area, the one closest to the viewpoint (that is, the general object associated with the smallest pixel value among the pixel values drawn in the area) You are searching.
  • the cursor represented by the crosshair 602 points to a general object that is out of position, but is in a situation where the general object overlaps with any of the dotted circle (relevant area) forces representing the vicinity thereof.
  • the CPU 101 functions as the output unit 307 in cooperation with the image processing unit 107 and the RAM 103.
  • step S511 and step S519 CPU 101 monitors the pressing operation status of controller 105 (step S520), and either ⁇ button 201 button 202 button 203 or ⁇ button 204 is pressed.
  • Step S520; arrow the object storage unit 302 is updated by changing the directions of the half-line object 406 and the cone object 407 by a predetermined minute so that the crosshair 602 moves in that direction.
  • Step S521 go to Step S523.
  • step S520 if the ⁇ button 205 is pressed (step S520; ⁇ ), this process ends. As a result, the object selection result force is output according to the value written in the selection result area in the RAM 103.
  • the ⁇ button 201 button 202 button 203, and the button 204 function as the direction instruction input reception unit 308, and the ⁇ button 205 functions as the decision instruction input reception unit 310.
  • the CPU 101 functions as the direction changing unit 309 and the determining unit 311 in cooperation with the RAM 103.
  • the direction instruction input receiving unit 308 and the decision instruction input receiving unit 310 are arranged so that the positions in the force screen that specify the directions of the half-line object 406 and the cone object 407 are in accordance with the interlocked crosses. Will be specified by line 602. Therefore, these functions as a position instruction input receiving unit that receives a position instruction input for designating any position on the screen.
  • Step S520 processing corresponding to the pressing operation or no operation is executed (Step S522) and wait for vertical synchronization interrupt (step S523). During this waiting, this Other processing can be executed in a coroutine manner.
  • step S523 When the standby (step S523) is completed, the display screen of the monitor is updated with the contents of the frame buffer 304, and the process returns to step S503. This is because the position of the general object or the like may be changed by the waiting process (step S523) or the corresponding process (step S522).
  • processing for highlighting the general object may be added.
  • the edge of the general object is thickened (for example, tone shading technology can be used), the general object is displayed brightly, and a cursor image indicating the general object is displayed. And so on.
  • FIG. 8 is an explanatory view showing a display example in such a case.
  • the general object at the address currently output in the result area is displayed with thick edges.
  • the edge of the cone object 407 surrounding the cross line 602 is displayed with a dotted line.
  • the edge shape remains the same even if the position of the cone object 407 is moved.
  • the shape of the cone object 407 surrounding the cross-hair 602 displayed on the screen may be a circle, square, rectangle, ellipse, or ellipse with a fixed shape. You may adopt the shape cut by
  • an object can be easily selected by an instruction in line with the user's intuition.
  • the position is instructed by a finger or a pen on the force touch panel on which the direction instruction is input by the controller 105, or the mouse cursor is moved and clicked.
  • a crosshair 602 may be displayed at the instructed position.
  • the position force instructed by the user in the screen 601 is calculated where it corresponds to the projection plane 408 in the virtual space 401, and the half-line object 406 is equivalent to the projection plane 408 from the viewpoint 405. Set to half line to point.
  • the display of the cone object 407 is not necessarily performed.
  • the instruction of the position of the finger or pen on the touch panel, or the instruction of the position by moving the mouse cursor and clicking can be used as an instruction input instead of a direction instruction input. The same processing is performed.
  • these devices perform a function substantially equivalent to the function performed by the direction instruction input receiving unit 308 in the object selection device 301, and function as a position instruction input receiving unit. It will also function as the input reception unit 310.
  • the cone object 407 is drawn in the frame buffer 304 in step S506, and the cone object 407 is drawn in the image buffer 305 in step S512. Although the region is obtained, the cone object 407 is not used in this embodiment.
  • a region having a fixed shape including a position when the half-line object 406 is drawn in the frame buffer 304 or the image buffer 305 is employed.
  • a shape of the area a square, rectangle, or circle of a predetermined size that moves with the point to which the half-line object 406 is projected (typically centered on the point) is adopted. is there.
  • the drawing of the frame buffer 304 in step S506 is to draw a fixed-size square, rectangle, circle, or the like with semi-transparency and edges with dotted lines.
  • the area acquired in step S512 is a fixed-size square, rectangle, or circle that moves with the projection point of the half-line object 406.
  • the image buffer 305 is used to calculate the crossover of the half-line object 406 or the cone object 407 and the general object, and the crossover is performed using a graphic operation in a general three-dimensional space. It is good to ask for.
  • the apex angle of the cone object 407 is 2 ⁇ , that is, the spread angle from the half-line object 406 serving as the central axis is ⁇ .
  • the cone object 407 crosses the general object.
  • is an operation for obtaining the inner product of the vectors
  • is an operation for obtaining the length of the vector.
  • the image buffer 30 when the cone object 407 has a conical shape, the image buffer 30
  • a virtual space of a three-dimensional space is assumed, and an object is selected under a condition in which the object is placed therein.
  • the principle of the present invention can be applied to a situation in which an object is assumed to have some order, and objects are superimposed and displayed according to the order.
  • the image power representing a plurality of items arranged in a two-dimensional plane is selected, for example, a method of selecting an object as applied to the selection of a playing card. I will explain.
  • the objects are ordered according to the distance of the viewpoint power, and before and after the order is close to the viewpoint, or far away from the viewpoint (by the order in the Z buffer or the reverse order). If multiple objects are candidates for selection, the one with the previous order (this is closer to the viewpoint) is selected. In the present embodiment, this is further generalized.
  • a "predetermined order" is defined. If the objects overlap, the objects in the previous order are displayed so as to hide the objects in the subsequent order. If multiple objects are candidates for selection, select the previous one in order! /.
  • a 2D object of a picture composed of three pairs of diagonal squares, a 2D object of a picture of a circle, and a 2D object of a picture that also has a counter force of a triangle are in this order. You can also think of it as if it is displayed in a row.
  • the crosshair does not overlap any 2D object, it is surrounded by a dotted line. From the two-dimensional objects that overlap the two-dimensional region, the one with the earliest order is selected.
  • This embodiment assumes a two-dimensional space as a virtual space while maintaining the context outside the object, and the details of the processing can be performed in the same manner as in the above embodiment.
  • an object selection device As described above, according to the present invention, an object selection device, an object selection method, and a computer that can easily select objects displayed in a predetermined order are displayed.
  • the computer-readable information recording medium that records the program realized in the above and the program can be provided.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Architecture (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Generation (AREA)

Abstract

 所定の順序が付けられて表示されるオブジェクトを容易に選択できるようにするオブジェクト選択装置等を提供する。オブジェクト選択装置(301)の表示部(306)は、オブジェクトが重なる場合には、順序が前のものが順序が後のものを隠すように画面に表示し、方向指示入力受付部(308)は、画面のいずれかの位置を指定する位置指示入力を受け付け、出力部(307)は、当該画面に表示されるオブジェクトのうち、当該位置指示入力に指定される位置に表示されるオブジェクトが存在すれば、当該順序で最も前のオブジェクトを選択結果として出力し、当該位置指示入力に指定される位置に表示されるオブジェクトが存在せず、当該位置を含むように定められる二次元領域に重なる位置に表示されるオブジェクトが存在すれば、当該順序で最も前のオブジェクトを選択結果として出力する。

Description

明 細 書
オブジェクト選択装置、オブジェクト選択方法、情報記録媒体、ならびに、 プログラム
技術分野
[0001] 本発明は、所定の順序が付けられて表示されるオブジェクトを容易に選択できるよう にするオブジェクト選択装置、オブジェクト選択方法、ならびに、これらをコンピュータ にて実現するプログラムを記録したコンピュータ読取可能な情報記録媒体、および、 当該プログラムに関する。
背景技術
[0002] 従来から、仮想空間に配置される各種のオブジェクトを画面に表示するコンビユー タグラフィックス技術が提案されている。このような技術は、以下の文献に開示されて いる。
特許文献 1:特許第 3497860号公報
[0003] このようなコンピュータグラフィックス技術においては、仮想空間内に、視点と投射平 面とを想定する。投射平面は、視点カゝら所定の距離に配置されており、視点から投射 平面に垂らした垂線力 視線の方向となる。そして、視点力もオブジェクトに向力 半 直線が投射平面に交わる位置を当該オブジェ外の表示位置に対応付ける透視投 影によって、レンダリングを行う。
[0004] この際に、視点とオブジェクトとの距離によってオブジェクトをソートした情報 (この情 報が記憶される領域は「Zバッファ」と呼ばれる。)により、オブジェクトを視点から遠い 順に投射平面に相当するフレームバッファに描画することによって、近いオブジェクト が遠いオブジェクトを隠す状況を描画するのが一般的である。
[0005] また、視点から伸びる半直線は、投射平面においては点に投射され、視点を頂点と する錐体(円錐、角錐等。)の表面は、投射平面においては、当該錐体の底面に相 当する図形の境界線(円周、楕円周、多角形の辺等。 )に投射される。
[0006] 従来、仮想空間内に配置されたオブジェクトからいずれかを選択する際には、移動 ボタンを押圧操作することによってあら力じめ定められた順序でオブジェクトからォブ ジェタトへ移動するカーソルを画面に表示し、所望のオブジェクトに達した時点で決 定ボタンを押圧操作することによる技術が利用されてきた。
発明の開示
発明が解決しょうとする課題
[0007] し力しながら、上記の技術では、カーソルが移動する順序がユーザの想定するもの と異なっていることもあり、この場合には、ユーザの選択が直観的でなくなるために、 オブジェクトの選択が煩雑であったり、操作ミスが生じることもあった。
[0008] したがって、仮想空間内に配置されるオブジェクトから 、ずれかをユーザが容易に 選択できる技術が強く望まれている。
[0009] 本発明は、このような課題を解決するものであり、所定の順序が付けられて表示さ れるオブジェクトを容易に選択できるようにするオブジェクト選択装置、オブジェクト選 択方法、ならびに、これらをコンピュータにて実現するプログラムを記録したコンビュ 一タ読取可能な情報記録媒体、および、当該プログラムを提供することを目的とする 課題を解決するための手段
[0010] 以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する
[0011] 本発明の第 1の観点に係るオブジェクト選択装置は、表示部、位置指示入力受付 部、出力部を備え、以下のように構成する。
[0012] まず、表示部は、所定の順序で順序付けされるオブジェクトを画面に表示し、当該 順序において前のオブジェクトと当該順序において後のオブジェクトとを、重ねて表 示する場合、当該前のオブジェクトが当該後のオブジェクトを隠すように表示する。
[0013] 所定の順序としては、三次元コンピュータグラフィックスを利用する場合には、仮想 空間に配置された視点力 オブジェクトまでの距離が近い順序等を採用することがで きる。オブジェクトを二次元で取り扱う場合には、スプライト表示などの際にいずれが いずれを隠す力 (前に表示されるか)の関係を適用することができる。
[0014] 一方、位置指示入力受付部は、当該画面の!/、ずれかの位置を指定する位置指示 入力を受け付ける。 [0015] 位置の指定の手法としては、タツチパネルを用いてペンや指などで画面の所望の 位置をタップする手法、マウスやキーボード、方向キーなどで画面に表示されるカー ソルを移動した後にクリックや決定ボタンなどで位置を決定する手法など、種々の手 法を適用することができる。
[0016] さらに出力部は、当該画面に表示されるオブジェクトのうち、
(a)当該位置指示入力に指定される位置に表示されるオブジェクトが存在すれば、 当該位置に表示されるオブジェクトのうち、当該順序で最も前のオブジェクトを選択 結果として、
(b)当該位置指示入力に指定される位置に表示されるオブジェクトが存在せず、当 該位置を含むように定められる二次元領域に重なる位置に表示されるオブジェクトが 存在すれば、当該重なる位置に表示されるオブジェクトのうち、当該順序で最も前の オブジェクトを選択結果として、
それぞれ出力する。
[0017] すなわち、画面の指定された位置にオブジェクトが表示されていれば、当該ォブジ ェクト(のうち、最前面にあり、後にオブジェクトがあれば、それらを隠して表示されるも の)を選択対象として選択し、そうでなければ、その位置を囲むように設定された二次 元領域に重なって表示されるオブジェクトのうち、最前面のものを選択結果として出 力する。
[0018] 二次元領域としては、指定された点の位置を中心とする円や長方形、正方形など 固定形状の図形を採用するほか、後述するような態様を採用しても良い。
[0019] 本発明によれば、所定の順序が付けられて表示されるオブジェクトを、ユーザが容 易に選択できるようになる。
[0020] また、オブジェクト選択装置において、当該オブジェクトは、仮想空間に配置される オブジェクトであり、当該順序において前のオブジェクトは、当該順序において後の オブジェクトよりも、当該仮想空間に配置される視点に近ぐ以下のように構成するこ とがでさる。
[0021] ここで、オブジェクトを画面に表示する際には、一般的な三次元コンピュータグラフ イツタスの技術を利用することができる。すなわち、 Zバッファ法を用いて、遠いォブジ ェタトから順に画像バッファに対して描画を行って、オブジェクト同士の遠近の隠し合 いの様子を描画する。
[0022] 一方、出力部は、当該仮想空間に配置される半直線であって、当該視点から伸び る半直線の方向を、当該位置指示入力に指定される位置により定める。
[0023] 当該半直線は、オブジェクトを選択するための指標として使用するものであり、半直 線は画面では点として表現されることとなる。
[0024] そして、出力部は、当該仮想空間に配置されるオブジェクトのうち、
(a)当該半直線が交叉するオブジェクトが存在すれば、当該半直線が交叉するォ ブジェクトのうち、当該視点に最も近 、オブジェクトを選択結果として、
(b)当該半直線が交叉するオブジェクトが存在せず、当該仮想空間において当該 半直線を含むように定められる三次元領域であつて当該画面における対応する領域 が当該二次元領域である三次元領域に交叉するオブジェクトが存在すれば、当該三 次元領域が交叉するオブジェクトのうち、当該視点に最も近 、オブジェクトを選択結 果として、
それぞれ出力する。
[0025] すなわち、(a)は、半直線がたとえばガンシユーティングゲームにおける「照準」のよ うに機能するものであって、視線力 伸びる半直線が最初に交叉したオブジェクトを 選択するものである。
[0026] 一方、(b)は、「照準」上にオブジェクトが存在しない場合に採用されるものであり、 半直線の周りの三次元領域に交叉するオブジェクトがある場合には、そのオブジェク トのうち最も視点に近いものを選択するものである。なお、この三次元領域は、前述の 二次元領域に対応付けられるもので、力りに画面にこの三次元領域を表示するとした 場合に、その表示の範囲が前述の二次元領域となるようなものを採用するのが典型 的である。
[0027] なお、これらの条件を満たすオブジェクトが存在しな 、場合には、 V、ずれのォブジ ェクトも選択結果としな!、のが典型的である。
[0028] 本発明によれば、仮想空間における半直線を配置し、半直線の描画先を含む領域 にオブジェクトが重なって表示されるか否かを考慮することによって、人間が何かを指 し示す際の曖昧さを表現できるようになり、人間の直観に応じたオブジェクトの選択が でさるよう〖こなる。
[0029] また、本発明のオブジェクト選択装置は、以下のように構成することができる。
[0030] すなわち、当該三次元領域は、当該視点を頂点とし当該半直線を含み当該半直線 に対する位置が固定された錐体であり、表示部は、当該半直線と、当該錐体と、を当 該視点から見た画像を当該画面にさらに表示する。
[0031] すなわち、角錐や円錐などの錐体が投射された先を、オブジェクトが重なって表示 される力否かを判定する二次元領域として採用するのである。
[0032] 本発明によれば、仮想空間における半直線および錐体を配置し、これらとオブジェ タトの交叉を考慮することによって、人間が何かを指し示す際の曖昧さを表現できるよ うになり、人間の直観に応じたオブジェクトの選択ができるようになる。
[0033] また、本発明のオブジェクト選択装置は、範囲順位記憶部をさらに備え、以下のよう に構成することができる。
[0034] すなわち、範囲順位記憶部は、当該仮想空間に配置されるオブジェクトと、当該ォ ブジエタトが当該画面にお 、て表示される範囲と、当該オブジェクトと当該視点との近 さの順位と、の 3つを対応付けて記憶する。
[0035] 仮想空間は 3次元空間であり、表示される画面は 2次元空間であるから、オブジェク トが表示される領域は 2次元空間である。したがって、範囲順位記憶部は、オブジェク トが画面内で占有する領域を記憶することとなり、オブジェクトが隠し合う場合には、 視点に最も近いオブジェクトが重なり合う領域を占有することとなる。なお、オブジェク トと視点との近さの順位としては、たとえば、 Zバッファ内におけるオブジェクトの位置( 配列のインデックス等。)を採用することができる。
[0036] 一方、出力部は、当該仮想空間に配置されるオブジェクトのうち、
(a)当該半直線が当該画面において表示される位置を含む範囲が範囲順位記憶 部に記憶されている場合、当該半直線が当該画面において表示される位置を含む 領域に対応付けられて範囲順位記憶部に記憶されて 、るオブジェクトを選択結果と して、
(b)当該半直線が当該画面において表示される位置を含む範囲が範囲順位記憶 部に記憶されておらず、当該錐体が当該画面において表示される範囲と交叉する範 囲が範囲順位記憶部に記憶されて 、る場合、当該錐体が当該画面にぉ 、て表示さ れる範囲と交叉する範囲に対応付けられて範囲順位記憶部に記憶されているォブジ ェクトのうち、当該オブジェクトと当該視点との近さの順位が最も近 、ものとして記憶さ れて 、るオブジェクトを選択結果として、
それぞれ出力する。
[0037] 上記のように、表示される画面において、オブジェクト同士が隠し合いの関係にある 場合には、重なり合う領域は、視点に最も近いオブジェクトが占有することになる。し たがって、本発明では、範囲順位記憶部に記憶されている情報を参照して、いずれ のオブジェクトを選択結果とするかを決定する。
[0038] 本発明によれば、仮想空間における 3次元演算を利用して半直線や錐体とォブジ ェタトの交点を求めるのではなぐ画面内でオブジェクトが表示される領域に関する情 報を参照することで、選択結果のオブジェクトを容易に決めることができる。
[0039] また、本発明のオブジェクト選択装置にぉ 、て、範囲順位記憶部は、画像バッファ であり、表示部が、当該仮想空間内に配置されるオブジェクトを、当該視点から遠い 順に、当該オブジェクトと当該視点との近さの順位を画素値として、当該画像バッファ に描画することによって、当該範囲順位記憶部に、当該オブジェクトが当該画面にお いて表示される範囲と、当該オブジェクトと当該視点との近さの順位と、が対応付けて 記憶されるように構成することができる。
[0040] コンピュータグラフィックスにお 、ては、たとえばダブルバッファリングの技術など、 必ずしも直ちに表示されるものではない画像を記憶するための画像バッファを用いる ことが広く行われている。通常、このような画像バッファにオブジェクトが描画される場 合には、オブジェクトの外形を構成するポリゴンのテクスチャに適当な変換 (光源'視 点との距離や光源'視点に対する角度等に応じて、テクスチャの明度や彩度、鮮明 度、粒度、大きさを変化させるようなもの。)を施すが、本発明では、このような非表示 の画像バッファに「描画」されるオブジェクトの「画素値」として視点との近さの順位を 採用するのである。
[0041] すると、非表示の画像バッファに半直線が描画されるべき位置を求めて、当該位置 に既に描画されて 、る画素値を見れば、どのオブジェクトが半直線と交叉するかがわ 力ることになる。
[0042] また、非表示の画像バッファに半直線が描画されるべき領域を求めて、当該領域に 含まれる画素の画素値の最小値 (視点に最も近!、オブジェクトの順位)を見れば、ど のオブジェクトが錐体と交叉するかがわ力ることになる。
[0043] 本発明は、上記発明の好適実施形態に係るものであり、本発明によれば、非表示 の画像バッファへオブジェクトを描画することで、半直線や錐体がオブジェクトと交叉 する力否かを、容易に判定することができるようになる。
[0044] また、本発明のオブジェクト選択装置において、出力部は、当該半直線の方向べク トルと、当該視点に対する当該オブジェクトの位置ベクトルと、のなす角により、当該 半直線と当該オブジェクトの交叉ならびに当該錐体と当該オブジェクトの交叉を判定 するよう〖こ構成することがでさる。
[0045] 上記発明では、オブジェクトが描画される領域と視点との近さの順位の情報を管理 することで、半直線や錐体とオブジェクトの交叉を判定していた力 本発明では、 3次 元空間に配置される図形の交叉の関係を求める演算により、判定を行う。
[0046] 本発明によれば、範囲順位記憶部のような記憶域を用いずに半直線や錐体とォブ ジェタトの交叉を判定することができるため、 RAM等の記憶域を節約して、少ないメ モリで処理を行うことができるようになる。
[0047] また、本発明のオブジェクト選択装置は、位置指示入力受付部にかえて、方向指示 入力受付部、方向変更部を備えるように構成することができる。
[0048] ここで、方向指示入力受付部は、当該仮想空間内における当該半直線の方向を指 定する方向指示入力の入力を受け付ける。
[0049] 方向指示入力は、たとえば、カーソルキーや矢印キーなどを用いて入力され、画面 に表示される半直線 (実際には「点」となる。 )の位置を上下左右に移動させることによ つて、与えられる。このほか、半直線を、常に、視点から投射平面に垂らした垂線 (こ の垂線は、視界の中心方向、すなわち視線である。 )に一致させることとし、仮想空間 内で視線を移動させるような指示入力を、方向指示入力として採用することもできる。
[0050] 一方、方向変更部は、入力を受け付けられた方向指示入力に指定される方向に、 当該半直線の方向を変更して、当該錐体の方向を変更する。
[0051] 上記のように、半直線と錐体の互いの位置関係は固定されているため、半直線の 方向が変更されれば、それと同じだけ、錐体の方向も変更されるのである。
[0052] さらに、出力部は、当該仮想空間に配置される半直線であって、当該視点から伸び る半直線の方向として当該方向変更部により変更される方向を用いる。
[0053] 本発明によれば、ユーザの指示入力に応じて画面内で「点」を移動させることによつ て、半直線および錐体を仮想空間内で移動させることができ、直観的なオブジェクト の選択に貢献することができる。
[0054] また、本発明のオブジェクト選択装置において、出力部が選択結果として出力する オブジェクトは、当該視点力もの距離が所定の閾値以下であるように構成することが できる。
[0055] すなわち、半直線や錐体に交叉するオブジェクトであっても、あまりに遠方に存在 するオブジェクトにつ 、ては、これを選択することができな 、ようにするものである。
[0056] 本発明によれば、ユーザの視点に比較的近いオブジェクトのみが選択できるように なるため、ユーザからは見えにくぐ選択される可能性がないオブジェクトが選択結果 となることはなくなるので、ユーザの直観に沿ったオブジェクトの選択ができるようにな る。
[0057] 本発明のその他の観点に係るオブジェクト選択方法は、表示部、位置指示入力受 付部、出力部を備えるオブジェクト選択装置にて実行され、表示工程、位置指示入 力受付工程、出力工程を備え、以下のように構成する。
[0058] すなわち、表示工程では、表示部が、所定の順序で順序付けされるオブジェクトを 画面に表示し、当該順序にぉ 、て前のオブジェクトと当該順序にぉ 、て後のォブジ ェタトとを、重ねて表示する場合、当該前のオブジェクトが当該後のオブジェクトを隠 すように表示する。
[0059] 一方、位置指示入力受付工程では、位置指示入力受付部が、当該画面の!/、ずれ 力の位置を指定する位置指示入力を受け付ける。
[0060] さらに、出力工程では、出力部が、当該画面に表示されるオブジェクトのうち、
(a)当該位置指示入力に指定される位置に表示されるオブジェクトが存在すれば、 当該位置に表示されるオブジェクトのうち、当該順序で最も前のオブジェクトを選択 結果として、
(b)当該位置指示入力に指定される位置に表示されるオブジェクトが存在せず、当 該位置を含むように定められる二次元領域に重なる位置に表示されるオブジェクトが 存在すれば、当該重なる位置に表示されるオブジェクトのうち、当該順序で最も前の オブジェクトを選択結果として、
それぞれ出力する。
[0061] 本発明のその他の観点に係るプログラムは、コンピュータを上記のオブジェクト選択 装置として機能させ、コンピュータに上記のオブジェクト選択方法を実行させるように 構成する。
[0062] また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディ スク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコン ピュータ読取可能な情報記憶媒体に記録することができる。
[0063] 上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ 通信網を介して配布 '販売することができる。また、上記情報記憶媒体は、コンビユー タとは独立して配布 ·販売することができる。
発明の効果
[0064] 本発明によれば、所定の順序が付けられて表示されるオブジェクトを容易に選択で きるようにするオブジェクト選択装置、オブジェクト選択方法、ならびに、これらをコン ピュータにて実現するプログラムを記録したコンピュータ読取可能な情報記録媒体、 および、当該プログラムを提供することができる。
図面の簡単な説明
[0065] [図 1]本発明のオブジェクト選択装置が実現される典型的な情報処理装置の概要構 成を示す模式図である。
[図 2]コントローラの外観を示す説明図である。
[図 3]本実施形態に係るオブジェクト選択装置の概要構成を示す説明図である。
[図 4]仮想空間内に配置されるオブジェクトの様子を示す説明図である。
[図 5]オブジェクト選択装置にて実行されるオブジェクト選択処理の制御の流れを示 すフローチャートである。
[図 6]ある状態のフレームバッファによって画面表示がなされるとした場合の様子を示 す説明図である。
[図 7]画像バッファに記憶される情報の様子を示す説明図である。
圆 8]画面の表示例を示す説明図である。
符号の説明
100 情報処理装置
101 CPU
102 ROM
103 RAM
104 インターフェイス
105 コントローラ
106 外部メモリ
107 画像処理部
108 DVD— ROMドライブ
109 NIC
110 音声処理部
111 マイク
201 ΐボタン
202 1ボタン
203 —ボタン
204 →ボタン
205 〇ボタン
206 Xボタン
207 △ボタン
208 ロボタン
209 SELECTボタン
210 STARTボタン 211 ANALOGボタン
212 インジケータ
213 ジョイスティック
214 ジョイスティック
215 L1ボタン
216 L2ボタン
217 R1ボタン
218 R2ボタン
301 オブジェクト選択装置
302 オブジェクト記憶部
303 Zノ ッファ
304 フレームノ ッファ
305 画像ノ ッファ
306 表示部
307 出力部
308 方向指示入力受付部
309 方向変更部
310 決定指示入力受付部
311 決定部
401 仮想空間
402 立方体オブジェクト
403 球体オブジェクト
404 三角錐才ブジェクト
405 視点
406 半直線オブジェクト
407 錐体オブジェクト
408 投射平面
601 画面 602 十字線
発明を実施するための最良の形態
[0067] 以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム 用の情報処理装置を利用して本発明が実現される実施形態を説明するが、以下に 説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものでは ない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なもの に置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の 範囲に含まれる。
実施例 1
[0068] 図 1は、プログラムを実行することにより、本発明のオブジェクト選択装置の機能を 果たす典型的な情報処理装置の概要構成を示す模式図である。以下、本図を参照 して説明する。
[0069] 情報処理装置 100は、 CPU (Central Processing Unit) 101と、 ROM 102と、 RA M (Random Access Memory) 103と、インターフェイス 104と、コントローラ 105と、外 咅メモリ 106と、画像処理部 107と、 DVD-ROM (Digital Versatile Disc ROM)ドラ イブ 108と、 NIC (Network Interface Card) 109と、音声処理部 110と、マイク 111と、 を備える。
[0070] ゲーム用のプログラムおよびデータを記憶した DVD— ROMを DVD— ROMドライ ブ 108に装着して、情報処理装置 100の電源を投入することにより、当該プログラム が実行され、本実施形態のオブジェクト選択装置が実現される。
[0071] CPU 101は、情報処理装置 100全体の動作を制御し、各構成要素と接続され制 御信号やデータをやりとりする。また、 CPU 101は、レジスタ(図示せず)という高速 アクセスが可能な記憶域に対して ALU (Arithmetic Logic Unit) (図示せず)を用いて 加減乗除等の算術演算や、論理和、論理積、論理否定等の論理演算、ビット和、ビ ット積、ビット反転、ビットシフト、ビット回転等のビット演算などを行うことができる。さら に、マルチメディア処理対応のための加減乗除等の飽和演算や、三角関数等、ベタ トル演算などを高速に行えるように、 CPU 101自身が構成されているものや、コプロ セッサを備えて実現するものがある。 [0072] ROM 102には、電源投入直後に実行される IPL (Initial Program Loader)が記録 され、これが実行されることにより、 DVD— ROMに記録されたプログラムを RAM 1 03に読み出して CPU 101による実行が開始される。また、 ROM 102には、情報 処理装置 100全体の動作制御に必要なオペレーティングシステムのプログラムや各 種のデータが記録される。
[0073] RAM 103は、データやプログラムを一時的に記憶するためのもので、 DVD—R OM力も読み出したプログラムやデータ、その他ゲームの進行やチャット通信に必要 なデータが保持される。また、 CPU 101は、 RAM 103に変数領域を設け、当該 変数に格納された値に対して直接 ALUを作用させて演算を行ったり、 RAM 103 に格納された値をー且レジスタに格納してからレジスタに対して演算を行 、、演算結 果をメモリに書き戻す、などの処理を行う。
[0074] インターフェイス 104を介して接続されたコントローラ 105は、ユーザがゲーム実行 の際に行う操作入力を受け付ける。
[0075] 図 2は、コントローラ 105の外観を示す説明図である。以下、本図を参照して説明す る。
コントローラ 105の左方には、上下左右を示す操作入力を行うのに利用される†ボ タン 201、 Iボタン 202、 ^ボタン 203、→ボタン 204力 己置されている。
右方には、決定操作入力を行うのに利用される〇ボタン 205、取消操作入力を行う のに利用される Xボタン 206、メニュー表示等の指示入力を行うのに利用される ボ タン 207、その他の指示入力を行うのに利用されるロボタン 208が配置されている。
[0076] 中央には、 SELECTボタン 209、 STARTボタン 210のほ力、、アナログ入力の開始
'停止を指示するための ANALOGボタン 211、および、アナログ入力が有効か無効 かを表示するためのインジケータ 212が配置されている。
また中央下部には、上下左右に限らない方向に大きさを伴う指示入力を行うための ジョイスティック 213、 214が配置されている。
[0077] さらに、上方には、各種の指示入力に用いることができる L1ボタン 215、 L2ボタン 2 16、 R1ボタン 217、 R2ボタン 218が配置されている。
コントローラ 105の各ボタン 201〜208、 215〜218には、圧力センサが酉己備され、 アナログ入力が有効となって 、る場合には、 、ずれのボタンが押圧操作されて 、るか を検知することができるほか、ユーザの押圧操作の圧力の大きさを 0〜255の 256段 階で得ることができる。
コントローラ 105のジョイスティック 213、 214は、ひずみゲージが配備され、これら がどの方向にどれだけ曲げられているカゝ、を検知することができる。
[0078] 図 1に戻り、インターフェイス 104を介して着脱自在に接続された外部メモリ 106に は、ゲーム等のプレイ状況 (過去の成績等)を示すデータ、ゲームの進行状態を示す データ、ネットワーク対戦の場合のチャット通信のログ (記録)のデータなどが書き換え 可能に記憶される。ユーザは、コントローラ 105を介して指示入力を行うことにより、こ れらのデータを適宜外部メモリ 106に記録することができる。
[0079] DVD— ROMドライブ 108に装着される DVD— ROMには、ゲームを実現するた めのプログラムとゲームに付随する画像データや音声データが記録される。 CPU 1
01の制御によって、 DVD— ROMドライブ 108は、これに装着された DVD— ROM に対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらは R AM 103等に一時的に記憶される。
[0080] 画像処理部 107は、 DVD— ROMから読み出されたデータを CPU 101や画像処 理部 107が備える画像演算プロセッサ(図示せず)によってカ卩ェ処理した後、これを 画像処理部 107が備えるフレームメモリ(図示せず)に記録する。フレームメモリに記 録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部 10 7に接続されるモニタ(図示せず)へ出力される。これにより、各種の画像表示が可能 となる。
[0081] 画像演算プロセッサは、 2次元の画像の重ね合わせ演算や αプレンディング等の 透過演算、各種の飽和演算を高速に実行できる。
[0082] また、仮想 3次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情 報を、 Ζバッファ法によりレンダリングして、所定の視点位置から仮想 3次元空間に配 置されたポリゴンを所定の視線の方向へ俯瞰したレンダリング画像を得る演算の高速 実行も可能である。
[0083] さらに、 CPU 101と画像演算プロセッサが協調動作することにより、文字の形状を 定義するフォント情報にしたがって、文字列を 2次元画像としてフレームメモリへ描画 したり、各ポリゴン表面へ描画することが可能である。
[0084] NIC 109は、情報処理装置 100をインターネット等のコンピュータ通信網(図示せ ず)に接続するためのものであり、 LAN (Local Area Network)を構成する際に用いら れる 10BASE—TZ100BASE—T規格にしたがうものや、電話回線を用いてインタ 一ネットに接続するためのアナログモデム、 ISDN (Integrated Services Digital Netwo rk)モデム、 ADSL (Asymmetric Digital Subscriber Line)モデム、ケーブルテレビジョ ン回線を用いてインターネットに接続するためのケーブルモデム等と、これらと CPU 101との仲立ちを行うインターフェース(図示せず)により構成される。
[0085] 音声処理部 110は、 DVD— ROM力も読み出した音声データをアナログ音声信号 に変換し、これに接続されたスピーカ(図示せず)から出力させる。また、 CPU 101 の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、こ れに対応した音声をスピーカから出力させる。
[0086] 音声処理部 110では、 DVD— ROMに記録された音声データが MIDIデータであ る場合には、これが有する音源データを参照して、 MIDIデータを PCMデータに変 換する。また、 ADPCM形式や Ogg Vorbis形式等の圧縮済音声データである場合に は、これを展開して PCMデータに変換する。 PCMデータは、そのサンプリング周波 数に応じたタイミングで DZA (Digital/Analog)変換を行って、スピーカに出力するこ とにより、音声出力が可能となる。
[0087] さらに、情報処理装置 100には、インターフェイス 104を介してマイク 111を接続す ることができる。この場合、マイク 111からのアナログ信号に対しては、適当なサンプリ ング周波数で AZD変換を行い、 PCM形式のディジタル信号として、音声処理部 11 0でのミキシング等の処理ができるようにする。
[0088] このほか、情報処理装置 100は、ハードディスク等の大容量外部記憶装置を用い て、 ROM 102、 RAM 103、外部メモリ 106、 DVD— ROMドライブ 108に装着さ れる DVD— ROM等と同じ機能を果たすように構成してもよ ヽ。
[0089] 以上で説明した情報処理装置 100は、いわゆる「コンシユーマ向けテレビゲーム装 置」に相当するものである力 仮想空間を表示するような画像処理を行うものであれ ば本発明を実現することができる。したがって、携帯電話、携帯ゲーム機器、カラオケ 装置、一般的なビジネス用コンピュータなど、種々の計算機上で本発明を実現するこ とが可能である。
[0090] 図 3は、本実施形態に係るオブジェクト選択装置の概要構成を示す説明図である。
以下、本図を参照して説明する。
[0091] 本実施形態に係るオブジェクト選択装置 301は、オブジェクト記憶部 302、 Zバッフ ァ 303、フレームノ ッファ 304、画像バッファ 305、表示部 306、出力部 307、方向指 示入力受付部 308、方向変更部 309、決定指示入力受付部 310、決定部 311を備 える。
[0092] 本実施形態では、仮想空間の様子を表示しつつ、当該仮想空間内に配置された オブジェ外の選択を行う。仮想空間内には、視点と投射平面が想定されており、画 面表示の際には、透視投影や平行投影を用いる。オブジェ外の透視投影を行う場 合には、オブジェクトと視点とを結ぶ線分が投射平面に交わる座標を、画面の座標に 対応させて、レンダリングを行う。また、平行投影を行う場合は、視点を無限遠点に配 置して、オブジェクトからこの無限遠点に向かって視線方向の平行線を伸ばし、これ が投射平面に交わる座標を用いる。
[0093] オブジェクト記憶部 302は、仮想空間に記憶されるオブジェクトの位置、姿勢、ポリ ゴン情報、テクスチャ情報、視点から伸びる半直線を表すオブジェクト(以下「半直線 オブジェクト」という。)である力、視点を頂点とする錐体を表すオブジェクト(以下「錐 体オブジェクト」という。)である力、それ以外の通常のオブジェクト(以下「一般ォブジ ヱタト」ともいう。)である力、を示す属性情報などを記憶する領域である。オブジェクト を当該領域に記憶するにあたっては、公知の 3次元オブジェクト管理技術を採用する ことができる。
[0094] なお、本実施形態では、半直線オブジェクトは 1つとし、錐体オブジェクトは当該半 直線オブジェクトに連動して仮想空間内を移動することとして 1つとし、錐体オブジェ タトの形状は、頂点における尖り角度が一定の、無限に大きな円錐形を採用する。
[0095] 一方、 Zバッファ 303は、一般オブジェクトがオブジェクト記憶部 302に記憶されるァ ドレスを、視点からの距離を鍵にソートした配列である。したがって、当該配列を一定 の方向に走査することで、一般オブジェクトに視点力 遠い順にアクセスすることがで き、これとは逆の方向に走査することで、一般オブジェクトに視点から近い順にァクセ スすることができる。
[0096] 本実施形態では、オブジェクト記憶部 302および Zバッファ 303は、 RAM 103内 に確保する。
[0097] 一方、フレームバッファ 304は、表示部 306が画像処理部 107に接続されるモニタ に仮想空間を視点から見た様子を表示する際に使用する領域で、画像処理部 107 は、 Zバッファ 303を視点力も遠い順に走査して一般オブジェクトを順に、位置情報、 光源情報、テクスチャ情報等に基づいて、透視投影でフレームバッファに描画する。 フレームバッファに描画された情報は、垂直同期信号にしたがって、モニタの画面に 表示されることとなる。
[0098] 画像バッファ 305は、実際に画面に表示することを意図しない(表示しても良い)フ レームバッファである力 一般オブジェクトを描画するときに、当該オブジェクトの色彩 (画素値)として、 Zバッファ 303内における当該オブジェクトの配列インデックス(これ は、視点からの近さ(遠さ)の順位に相当する。)を採用する。したがって、画面内の 位置が指定されれば、これに対応する画像バッファ 305の画素値から、オブジェクト がその位置に見えるかがすぐにわ力ることとなる。したがって、画像バッファ 305は、 範囲順位記憶部として機能する。
[0099] 本実施形態では、フレームバッファ 304および画像バッファ 305は、典型的には R AM 103内に確保される力 画像処理部 107の内部に用意された高速アクセスが 可能な記憶域などを利用しても良 、。
[0100] 図 4は、仮想空間内に配置されるオブジェクトの様子を示す説明図である。以下、 本図を参照して説明する。
[0101] 仮想空間 401には、一般オブジェクトとして、立方体オブジェクト 402、球体ォブジ ェクト 403、三角錐オブジェクト 404が配置されている。また、視点 405から伸びる半 直線オブジェクト 406と、これを中心軸とする円錐形の錐体オブジェクト 407も配置さ れている。
[0102] 仮想空間 401には、仮想的な投射平面 408も配置されており、各オブジェクトが画 面に表示される座標は、当該オブジェクトと視点 405とを結ぶ線分が投射平面 408と 交わる交点の位置によって決まる。このような投射技術を透視投影と呼ぶ。
[0103] 本図に示す配置例では、視点 405からの近い順は、立方体オブジェクト 402、球体 オブジェクト 403、三角錐オブジェクト 404となっている。
[0104] 図 5は、オブジェクト選択装置 301にて実行されるオブジェクト選択処理の制御の流 れを示すフローチャートである。以下、本図を参照して説明する。
[0105] 本処理が実行されると、まず、 CPU 101は、オブジェクト記憶部 302に、仮想空間 に配置される一般オブジェクト、半直線オブジェクト、錐体オブジェクトの情報を記憶 させて初期化する(ステップ S501)。
[0106] 次に、 CPU 101は、 Zバッファ 303に一般オブジェクトのアドレスを登録して(ステ ップ S502)、 Zバッファ 303を当該アドレスにより指されるオブジェクトの視点 405から の距離によってソートする (ステップ S503)。たとえば、近い順にソートしたとすると、
(1)配列の 0番目の要素は、立方体オブジェクト 402、
(2)配列の 1番目の要素は、球体オブジェクト 403、
(3)配列の 2番目の要素は、三角錐オブジェクト 404
となる。
[0107] さらに、画像処理部 107は、フレームバッファ 304を表示用背景色でクリアした後( ステップ S504)、 Zバッファ 303およびオブジェクト記憶部 302を参照して、視点 405 力も遠い順に一般オブジェクトを (本例では、配列のインデックスを 2から 0に向かって 走査し、三角錐オブジェクト 404、球体オブジェクト 403、立方体オブジェクト 402の 順に)フレームバッファ 304に描画する (ステップ S505)。この際には、オブジェクト記 憶部 302に記憶される一般オブジェクトの位置、姿勢、テクスチャ情報のほか、視点 4 05の位置や光源の位置なども参照して、通常の 3次元グラフィックス生成処理が行わ れる。
[0108] っ 、で、画像処理部 107は、オブジェクト記憶部 302を参照して、半直線オブジェ タト 406および錐体オブジェクト 407をフレームバッファ 304に描画する(ステップ S50 6)。半直線オブジェクト 406や錐体オブジェクト 407は、半透明な色彩で表示したり、 錐体オブジェクト 407の周囲のみ点線で表示したりするなどの手法を採用することも できる。また、半直線オブジェクト 406を透視投影すると、必ず一つの点になってしま うため、これを目立たせるために、十字線などの標識を表示しても良い。
[0109] このようにしてフレームバッファ 304に記憶された画像情報は、垂直同期割り込みを 時間の単位として、画像処理部 107に接続されるモニタに実際に画面表示がなされ ることになる。
[0110] たとえば、 24ビットカラーで 800ドット X 600ドットの画像を表示する場合、フレーム ノッファ 304としては、 3 X 800 X 600= 1440000ノイトの領域力必要となる。
[0111] 図 6は、この状態のフレームバッファ 304によって画面表示がなされるとした場合の 様子を示す説明図である。以下、本図を参照して説明する。
[0112] 本図に示すように、画面 601内には、一般オブジェクトとして立方体オブジェクト 40 2、球体オブジェクト 403、三角錐オブジェクト 404が表示される。
[0113] また、それ以外のオブジェクトとして半直線オブジェクト 406の方向を目立たせるた めの十字線 602、錐体オブジェクト 407が表示されている。本図では、理解を容易に するため、錐体オブジェクト 407は、周囲のみ点線で表示するものとしている力 上記 のように、半透明の色彩を採用して、錐体オブジェクト 407に交叉する一般オブジェ タトが透けて見えるようにしても良 、。
[0114] さらに、画像処理部 107は、画像バッファ 305を距離用背景色でクリアした後 (ステ ップ S507)、 Zバッファ 303およびオブジェクト記憶部 302を参照して、視点 405から 遠 、順に一般オブジェクトを (本例では、配列のインデックスを 2から 0に向かって走 查し、三角錐オブジェクト 404、球体オブジェクト 403、立方体オブジェクト 402の順 に)画像バッファ 305に描画する(ステップ S508)。
[0115] この際に、画素値としては、配列のインデックスを採用する。すなわち、本例では、 三角錐オブジェクト 404は画素値 2で、球体オブジェクト 403は画素値 1で、立方体ォ ブジェクト 402は画素値 0で、それぞれ描画することとなる。
[0116] さて、画像バッファ 305としては、 24ビットカラーを採用する必要性はない。画像バ ッファ 305に描画される一般オブジェクトの個数に上限を定めたり、一般オブジェクト の視点 405からの距離に上限を定めることによって、この個数を限定することとなる。
[0117] たとえば、画像バッファ 305の 1画素を 1バイト =8ビットで済ませたい場合には、距 離用背景色として、画素値「28-1 = 255」を採用し、一般オブジェクトの個数は、画素 値「0」〜「254」の 255個とすれば良!、。
[0118] また、画像バッファ 305の 1画素を 1Z2バイト =4ビットで済ませたい場合には、距 離用背景色として、画素値「24-1 = 15」を採用し、一般オブジェクトの個数は、画素値
「0」〜「14」の 15個とすれば良い。
[0119] このような数値の対応付けについては、逆順にしたり、所定の関数や演算を適用し た結果を採用するなど、各種の変形が考えられるが、いずれも本発明の範囲に含ま れる。
[0120] また、画像バッファ 305は、実際に画面に表示することを意図したものではないので 、フレームバッファが 800 X 600ドットであっても、これと同じサイズにする必要はなく 、たとえば 400 X 300ドット、 200 X 150ドット、 100 X 75ドットにする等、縮/ J、したサ ィズにすることもできる。このようにすれば、画像バッファ 305のサイズを小さくすること ができるため、 RAM 103の使用効率を上げることができるほか、画像バッファ 305 への描画時間を抑えることができる。
[0121] 図 7は、画像バッファ 305に記憶される情報の様子を示す説明図である。以下、本 図を参照して説明する。
[0122] 本図に示すように、画像バッファ 305は、画面に対応する形状 (典型的には画面の ドットを縮小した)の画素配列であり、三角錐オブジェクト 404は画素値 2が、球体ォ ブジェクト 403は画素値 1が、立方体オブジェクト 402は画素値 0力 それ以外の領域 は距離用背景色として画素値 255が、書き込まれている。
[0123] このように、画像処理部 107は、 CPU 101の制御の下、 RAM 103等と共働して 、表示部 306として機能する。また、 RAM 103内に用意された画像バッファは、範 囲順位記憶部として機能する。
[0124] ついで、画像処理部 107は、 CPU 101の制御の下、半直線オブジェクト 406が画 像バッファ 305に描画されるとした場合の画像バッファ 305内における座標を求める( ステップ S509)。上記同様、透視投影の技術を用いれば良い。
[0125] そして、画像バッファ 305における当該座標の画素値を取得して、その値が距離用 背景色であるか否かを判別する (ステップ S510)。当該画素値が距離用背景色でな ければ (ステップ S510 ;No)、 Zバッファ 303の配列のインデックスとして当該画素値 を採用して得たオブジェクトのアドレスを、 RAM 103内に用意された選択結果領域 に出力する (ステップ S511)。
[0126] これは、十字線 602により表現されるカーソル力 一般オブジェクトのいずれかに直 接重なって ヽる(一般オブジェクトを直接指して 、る)場合に相当し、選択結果領域に 出力されるオブジェクトは、十字線 602により表現されるカーソルが指しているォブジ ェタトになる。
[0127] 一方、その値が距離用背景色である場合 (ステップ S510 ; Yes)、画像処理部 107 は、 CPU 101の制御の下、錐体オブジェクト 407が画像バッファ 305に描画される とした場合の画像バッファ 305内における領域を求める(ステップ S512)。
[0128] 本実施形態では、錐体オブジェクト 407として円錐形状を採用しているため、この領 域(図 6における点線で囲まれる領域)の形状は円または楕円となる。このほか、錐体 オブジェクト 407として四角錐を採用した場合には、この領域の形状は四角形となる 。なお、この領域の形状については、種々の変形例については後述する。
[0129] そして、 RAM 103内に用意された一時画素値領域に距離用背景色を代入し (ス テツプ S513)、画像バッファ 305において当該領域に含まれる画素のそれぞれにつ いて、以下の処理を繰り返す (ステップ S514〜ステップ S517)。
[0130] すなわち、現在の画素の画素値が一時画素値領域に記憶されたものより小さいか 否かを判別し (ステップ S515)、そうであれば (ステップ S515 ;Yes)、一時画素値領 域に現在の画素値を代入して (ステップ S516)、他の画素について処理を繰り返す( ステップ S514〜ステップ S517)。一方、そうでなければ (ステップ S515 ;No)、他の 画素につ 、て処理を繰り返す (ステップ S514〜ステップ S 517)。
[0131] 領域に含まれる画素について繰り返し処理 (ステップ S514〜ステップ S517)が終 了したら、一時画素値領域に記憶される値が距離用背景色であるか否かを判別し( ステップ S518)、そうでなければ (ステップ S518 ;No)、ステップ S511に進む。そう であれば (ステップ S518 ; Yes)、選択結果領域にアドレス 0を出力することによって( ステップ S519)、選択結果「なし」であることを表す。
[0132] ステップ S514〜ステップ S517で行う処理は、当該領域に含まれる画素のうち最小 のもの、すなわち、領域内に描画されるべき一般オブジェクトのうち、視点に最も近い もの(すなわち、当該領域内に描画された画素値のうち、最小の画素値に対応付けら れる一般オブジェクト)を検索していることになる。すなわち、十字線 602により表現さ れるカーソルは 、ずれの一般オブジェクトも指して 、な 、が、その近傍を表す点線の 円(当該領域)力 いずれかの一般オブジェクトに重なっている状況である。
[0133] このように、 CPU 101は、画像処理部 107や RAM 103と共働して、出力部 307 として機能する。
[0134] さて、ステップ S511およびステップ S519の後、 CPU 101は、コントローラ 105の 押圧操作状況を監視し (ステップ S 520)、 †ボタン 201 ボタン 202 ボタン 203 、→ボタン 204のいずれかが押圧操作されている場合 (ステップ S520 ;矢印)、その 方向に十字線 602が移動するように、半直線オブジェクト 406および錐体オブジェク ト 407の方向を所定の微小 だけ変化させてオブジェクト記憶部 302を更新して (ス テツプ S521)、ステップ S523に進む。
[0135] 一方、〇ボタン 205が押圧操作されている場合 (ステップ S520 ;〇)、本処理を終 了する。これによつて、オブジェクトの選択結果力 RAM 103内の選択結果領域に 書き込まれた値によって出力されることになる。
[0136] したがって、 CPU 101の制御の元、 †ボタン 201 ボタン 202 ボタン 203、 →ボタン 204は、方向指示入力受付部 308として機能し、〇ボタン 205は、決定指示 入力受付部 310として機能し、 CPU 101は、 RAM 103と共働して、方向変更部 3 09および決定部 311として機能することとなる。
[0137] また、方向指示入力受付部 308および決定指示入力受付部 310は、半直線ォブ ジェタト 406および錐体オブジェクト 407の方向を指定する力 画面内の位置は、こ れらの連動する十字線 602によって指定されることとなる。したがって、これらは、画 面のいずれかの位置を指定する位置指示入力を受け付ける位置指示入力受付部と してち機會することとなる。
[0138] 一方、その他のボタンが押圧操作されて 、るか、何も押圧操作されて!、な 、場合 ( ステップ S520;その他)、当該押圧操作や無操作に対応する処理を実行して (ステツ プ S522)、垂直同期割り込みまで待機する (ステップ S523)。この待機中には、この ほかの処理をコルーチン的に実行することができる。
[0139] 待機(ステップ S523)が完了すると、モニタの表示画面がフレームバッファ 304の内 容で更新されることとなるので、ステップ S503に戻る。これは、待機中の処理 (ステツ プ S523)や対応する処理 (ステップ S522)によって、一般オブジェクトの位置等が変 更されることがあるカゝらである。
[0140] なお、待機 (ステップ S523)の直前に、選択結果領域に出力されているアドレスの 一般オブジェクトがあれば、当該一般オブジェクトを強調表示する処理を追加しても 良い。強調表示の手法としては、当該一般オブジェクトの縁を太くする(たとえば、トウ ーンシェーディングの技術を利用することができる。)、当該一般オブジェクトを明るく 表示する、当該一般オブジェクトを指すカーソル画像を表示する、等である。
[0141] 図 8は、このような場合の表示例を示す説明図である。これらの表示例では、現在 結果領域に出力されているアドレスの一般オブジェクトは縁が太くなるように表示され ている。また、十字線 602を囲む錐体オブジェクト 407の縁が点線で表示されている 。なお、本図では、理解を容易にするため、錐体オブジェクト 407の位置が移動して も、縁の形状は同じ円のままとしている。上記のように、十字線 602を囲む錐体ォブ ジェタト 407が画面に表示される形状は、一定形状の円、正方形、長方形、楕円、長 円などとしても良いし、円錐や角錐が投射平面で切り取られる形状を採用しても良い
[0142] 本図(a) (h)では、錐体オブジェクト 407 (の表示範囲)と三角錐オブジェクト 404 ( の表示範囲)が交叉しているため、三角錐オブジェクト 404が強調表示されている。こ の状態で〇ボタン 205を押圧操作すると、三角錐オブジェクト 404が選択結果として 決定される。
[0143] 本図(b) (g)では、錐体オブジェクト 407 (の表示範囲)と交叉するオブジェクト(の 表示範囲)がな 、ため、 、ずれのオブジェクトも強調表示されて 、な 、。
[0144] 本図(c) (d)では、錐体オブジェクト 407 (の表示範囲)と立方体オブジェクト 402 ( の表示範囲)が交叉しているため、立方体オブジェクト 402が強調表示されている。こ の状態で〇ボタン 205を押圧操作すると、立方体オブジェクト 402が選択結果として 決定される。 [0145] 本図(e) (f)では、錐体オブジェクト 407 (の表示範囲)と交叉するのは、三角錐ォブ ジェタト 404 (の表示範囲)と球体オブジェクト 403 (の表示範囲)の 2つであるが、球 体オブジェクト 403の方が三角錐オブジェクト 404よりも、視点 405に近い順で前にあ るため、この状態で〇ボタン 205を押圧操作すると、球体オブジェクト 403が選択結 果として決定される。
[0146] 本実施形態によれば、ユーザの直観に沿った指示によって、オブジェクトを容易に 選択することができるよう〖こなる。
[0147] なお、上記実施形態では、コントローラ 105によって方向指示入力を行っている力 タツチパネルに指やペンで位置を指示したり、マウスカーソルを移動させてクリックす ることにより位置を指示して、指示された位置に十字線 602が表示されるようにしても 良い。
[0148] この場合、画面 601内でユーザに指示された位置力 仮想空間 401内の投射平面 408でどこに相当するかを計算し、半直線オブジェクト 406を、視点 405から投射平 面 408上の相当点への半直線に設定する。
[0149] 錐体オブジェクト 407の表示は必ずしも行う必要はない。また、タツチパネルに対す る指やペンの位置の指示、マウスカーソルを移動させてクリックすることによる位置の 指示を、方向指示入力にかわるものとするとともに、決定指示入力でもある、として扱 つて、上記と同様の処理を行う。
[0150] したがって、これらの機器は、オブジェクト選択装置 301に方向指示入力受付部 30 8が果たす機能と実質的に等価な機能を果たすこととなり、位置指示入力受付部とし て機能するとともに、決定指示入力受付部 310としても機能することとなる。
実施例 2
[0151] 上記実施例では、ステップ S506において、錐体オブジェクト 407をフレームバッフ ァ 304に描画し、ステップ S512において、錐体オブジェクト 407が画像バッファ 305 に描画されるとした場合の画像バッファ 305内における領域を求めることとしていたが 、本実施形態では、錐体オブジェクト 407を利用しない。
[0152] すなわち、半直線オブジェクト 406がフレームバッファ 304や画像バッファ 305に描 画される際の位置を含む、固定された形状の領域を採用するのである。 [0153] たとえば、当該領域の形状として、半直線オブジェクト 406が投射される点とともに 動く(典型的には、当該点を中心とする)所定の大きさの正方形や長方形、円形を採 用するのである。
[0154] この場合、ステップ S506におけるフレームバッファ 304の描画は、固定サイズの正 方形や長方形、円形等を半透明や縁を点線で描画することとなる。
[0155] また、ステップ S512において取得される領域は、半直線オブジェクト 406の投射点 とともに動く固定サイズの正方形や長方形、円形となる。
[0156] 上記実施形態では、十字線 602を画面内で移動させると、錐体オブジェクト 407が 描画される領域が変形していたが、本実施形態では、一般オブジェクトが交叉するこ とによって選択されることとなる領域の形状は、十字線 602を画面内で移動させても 変形しない。
[0157] 本実施形態によれば、錐体オブジェクト 407を使用しな 、ことで、簡易にオブジェク トを容易に選択することができるようになる。
実施例 3
[0158] 上記実施形態では、画像バッファ 305を利用して、半直線オブジェクト 406や錐体 オブジェクト 407と一般オブジェクトの交叉を求めていた力 一般的な 3次元空間に おける図形演算を用いて、交叉を求めることとしても良い。
[0159] たとえば、錐体オブジェクト 407の頂点の尖り角度を 2 Θ、すなわち中心軸となる半 直線オブジェクト 406からの広がり角度を Θとした場合を考える。
[0160] 仮想空間における視点 405の位置ベクトル r、半直線オブジェクト 406の方向べタト ル d、一般オブジェクト内の或る点の位置ベクトル sとしたとき、
(s-r) - d/(|s||d|) = l
であれば、半直線オブジェクト 406は、当該或る点を通過することになる。
[0161] また、
(s-r) - d/(|s||d|) = cos φ力つ φ≤ Θ
であれば、錐体オブジェクト 407は当該一般オブジェクトと交叉することになる。ここで 、「·」はベクトルの内積を求める演算であり、「| |」はベクトルの長さを求める演算であ る。 [0162] このようにして、一般オブジェクトと半直線オブジェクト 406や錐体オブジェクト 407 の交叉を 3次元図形演算によって判断するのである。
[0163] 本実施形態によれば、錐体オブジェクト 407が円錐形の場合には、画像バッファ 30
5を利用しなくとも、単なるベクトル演算などの計算によって、オブジェクト同士の交叉 を求めることができる。
実施例 4
[0164] 上記実施形態では、 3次元空間の仮想空間を想定し、その中にオブジェクトが配置 される条件下において、オブジェクトの選択を行うこととしていた。し力しながら、本発 明の原理は、オブジェクトに何らかの順序が想定されており、その順序によってォブ ジェタトの重ね合わせ表示がされる状況に適用することができる。
[0165] 以下では、 2次元平面に配置された複数のアイテムを表す画像力 いずれかを選 択する状況、たとえばトランプのカードを選択する場合に適用されるような、オブジェ タトの選択の手法にっ 、て説明する。
[0166] 上記の実施形態では、視点力 の距離によってオブジェクトに順序が付けられてお り、順序の前後を視点に近 、か遠 、力ゝ (Zバッファ内での順序もしくは逆順序によつて 定められる。 )によって決め、複数のオブジェクトが選択の候補となっている場合には 、順序が前のもの(これは、視点に近いものである。)を選ぶこととしている。本実施形 態では、これをさらに一般ィ匕したものである。
[0167] オブジェクトが重ね合わせて表示される場合に、「所定の順序」が定められており、 オブジェクトが重なる場合は、順序が前のオブジェクトが順序が後のオブジェクトを隠 すように表示され、複数のオブジェクトが選択の候補となっている場合には、順序が 前のものを選ぶこととして!/、る。
[0168] たとえば、図 8に示す例は、斜めの四角形の 3つ組からなる絵の 2次元オブジェクト 、円の絵の 2次元オブジェクト、三角形の対力もなる絵の 2次元オブジェクトが、この順 序で表示されて ヽる様子であると考えることもできる。
[0169] そして、十字線がいずれかの 2次元オブジェクトに重なる位置にある場合は、その 2 次元オブジェクトが選択される。
[0170] 一方、十字線がいずれかの 2次元オブジェクトにも重ならない場合は、点線で囲ま れた二次元領域に重なる 2次元オブジェクトから、順序が最も前であるものが選択さ れるのである。
[0171] 本実施形態は、オブジェ外の前後関係は維持したまま、仮想空間として、 2次元空 間を想定するものであり、処理の詳細は、上記実施形態と同様に行うことができる。
[0172] なお、本願においては、日本国特許出願 2005— 343317号を基礎とする優先権 を主張するとともに、当該基礎とする出願の内容をすベて本願の内容として取り込む ものとする。
産業上の利用可能性
[0173] 以上説明したように、本発明によれば、所定の順序が付けられて表示されるォブジ ェクトを容易に選択できるようにするオブジェクト選択装置、オブジェクト選択方法、な らびに、これらをコンピュータにて実現するプログラムを記録したコンピュータ読取可 能な情報記録媒体、および、当該プログラムを提供することができる。

Claims

請求の範囲
[1] 所定の順序で順序付けされるオブジェクトを画面に表示する表示部(306)であつ て、当該順序において前のオブジェクトと当該順序において後のオブジェクトとを、重 ねて表示する場合、当該前のオブジェクトが当該後のオブジェクトを隠すように表示 する表示部(306)、
当該画面のいずれかの位置を指定する位置指示入力を受け付ける位置指示入力 受付部(308)、
当該画面に表示されるオブジェクトのうち、
(a)当該位置指示入力に指定される位置に表示されるオブジェクトが存在すれば、 当該位置に表示されるオブジェクトのうち、当該順序で最も前のオブジェクトを選択 結果として、
(b)当該位置指示入力に指定される位置に表示されるオブジェクトが存在せず、当 該位置を含むように定められる二次元領域に重なる位置に表示されるオブジェクトが 存在すれば、当該重なる位置に表示されるオブジェクトのうち、当該順序で最も前の オブジェクトを選択結果として、
それぞれ出力する出力部(307)
を備えることを特徴とするオブジェ外選択装置 (301)。
[2] 請求項 1に記載のオブジェクト選択装置(301)であって、
当該オブジェクトは、仮想空間に配置されるオブジェクトであり、
当該順序にお 、て前のオブジェクトは、当該順序において後のオブジェクトよりも、 当該仮想空間に配置される視点に近ぐ
前記出力部(307)は、当該仮想空間に配置される半直線であって、当該視点から 伸びる半直線の方向を、当該位置指示入力に指定される位置により定め、
当該仮想空間に配置されるオブジェクトのうち、
(a)当該半直線が交叉するオブジェクトが存在すれば、当該半直線が交叉するォ ブジェクトのうち、当該視点に最も近 、オブジェクトを選択結果として、
(b)当該半直線が交叉するオブジェクトが存在せず、当該仮想空間において当該 半直線を含むように定められる三次元領域であつて当該画面における対応する領域 が当該二次元領域である三次元領域に交叉するオブジェクトが存在すれば、当該三 次元領域が交叉するオブジェクトのうち、当該視点に最も近 、オブジェクトを選択結 果として、
それぞれ出力する出力部(307)
を備えることを特徴とするオブジェ外選択装置 (301)。
[3] 請求項 2に記載のオブジェクト選択装置(301)であって、
当該三次元領域は、当該視点を頂点とし当該半直線を含み当該半直線に対する 位置が固定された錐体であり、
前記表示部(306)は、当該半直線と、当該錐体と、を当該視点から見た画像を当 該画面にさらに表示し、
当該錐体が当該画像にお!、て表示される領域は、当該二次元領域である ことを特徴とするオブジェクト選択装置(301)。
[4] 請求項 3に記載のオブジェクト選択装置(301)であって、
当該仮想空間に配置されるオブジェクトと、当該オブジェクトが当該画面にお 、て 表示される範囲と、当該オブジェクトと当該視点との近さの順位と、の 3つを対応付け て記憶する範囲順位記憶部をさらに備え、
前記出力部(307)は、当該仮想空間に配置されるオブジェクトのうち、
(a)当該半直線が当該画面において表示される位置を含む範囲が前記範囲順位 記憶部に記憶されている場合、当該半直線が当該画面において表示される位置を 含む領域に対応付けられて前記範囲順位記憶部に記憶されて 、るオブジェクトを選 択結果として、
(b)当該半直線が当該画面において表示される位置を含む範囲が前記範囲順位 記憶部に記憶されておらず、当該錐体が当該画面において表示される範囲と交叉 する範囲が前記範囲順位記憶部に記憶されて 、る場合、当該錐体が当該画面にお いて表示される範囲と交叉する範囲に対応付けられて前記範囲順位記憶部に記憶 されて 、るオブジェクトのうち、当該オブジェクトと当該視点との近さの順位が最も近 V、ものとして記憶されて 、るオブジェクトを選択結果として、
それぞれ出力する ことを特徴とするオブジェクト選択装置(301)。
[5] 請求項 4に記載のオブジェクト選択装置(301)であって、
前記範囲順位記憶部は、画像バッファであり、
前記表示部(306)が、当該仮想空間内に配置されるオブジェクトを、当該視点から 遠い順に、当該オブジェクトと当該視点との近さの順位を画素値として、当該画像バ ッファに描画することによって、当該範囲順位記憶部に、当該オブジェクトが当該画 面において表示される範囲と、当該オブジェクトと当該視点との近さの順位と、が対 応付けて記憶される
ことを特徴とするオブジェクト選択装置(301)。
[6] 請求項 3に記載のオブジェクト選択装置(301)であって、
前記出力部(307)は、当該半直線の方向ベクトルと、当該視点に対する当該ォブ ジェタトの位置ベクトルと、のなす角により、当該半直線と当該オブジェクトの交叉なら びに当該錐体と当該オブジェクトの交叉を判定する
ことを特徴とするオブジェクト選択装置(301)。
[7] 請求項 3に記載のオブジェクト選択装置(301)であって、前記位置指示入力受付 部(308)にかえて、
当該仮想空間内における当該半直線の方向を指定する方向指示入力の入力を受 け付ける方向指示入力受付部(308)、
前記入力を受け付けられた方向指示入力に指定される方向に、当該半直線の方 向を変更して、当該錐体の方向を変更する方向変更部(309)
を備え、
前記出力部(307)は、当該仮想空間に配置される半直線であって、当該視点から 伸びる半直線の方向として当該方向変更部(309)により変更される方向を用いる ことを特徴とするオブジェクト選択装置(301)。
[8] 請求項 2に記載のオブジェクト選択装置(301)であって、
前記出力部(307)が選択結果として出力するオブジェクトは、当該視点からの距離 が所定の閾値以下である
ことを特徴とするオブジェクト選択装置(301)。
[9] 所定の順序で順序付けされるオブジェクトを画面に表示し、当該順序において前の オブジェクトと当該順序において後のオブジェクトとを、重ねて表示する場合、当該前 のオブジェクトが当該後のオブジェクトを隠すように表示する表示工程、
当該画面のいずれかの位置を指定する位置指示入力を受け付ける位置指示入力 受付工程、
当該画面に表示されるオブジェクトのうち、
(a)当該位置指示入力に指定される位置に表示されるオブジェクトが存在すれば、 当該位置に表示されるオブジェクトのうち、当該順序で最も前のオブジェクトを選択 結果として、
(b)当該位置指示入力に指定される位置に表示されるオブジェクトが存在せず、当 該位置を含むように定められる二次元領域に重なる位置に表示されるオブジェクトが 存在すれば、当該重なる位置に表示されるオブジェクトのうち、当該順序で最も前の オブジェクトを選択結果として、
それぞれ出力する出力工程
を備えることを特徴とするオブジェクト選択方法。
[10] コンピュータを、
所定の順序で順序付けされるオブジェクトを画面に表示する表示部(306)であつ て、当該順序において前のオブジェクトと当該順序において後のオブジェクトとを、重 ねて表示する場合、当該前のオブジェクトが当該後のオブジェクトを隠すように表示 する表示部(306)、
当該画面のいずれかの位置を指定する位置指示入力を受け付ける位置指示入力 受付部(308)、
当該画面に表示されるオブジェクトのうち、
(a)当該位置指示入力に指定される位置に表示されるオブジェクトが存在すれば、 当該位置に表示されるオブジェクトのうち、当該順序で最も前のオブジェクトを選択 結果として、
(b)当該位置指示入力に指定される位置に表示されるオブジェクトが存在せず、当 該位置を含むように定められる二次元領域に重なる位置に表示されるオブジェクトが 存在すれば、当該重なる位置に表示されるオブジェクトのうち、当該順序で最も前の オブジェクトを選択結果として、
それぞれ出力する出力部(307)
として機能させることを特徴とするプログラムを記録したコンピュータ読取可能な情 報記録媒体。
コンピュータを、
所定の順序で順序付けされるオブジェクトを画面に表示する表示部(306)であつ て、当該順序において前のオブジェクトと当該順序において後のオブジェクトとを、重 ねて表示する場合、当該前のオブジェクトが当該後のオブジェクトを隠すように表示 する表示部(306)、
当該画面のいずれかの位置を指定する位置指示入力を受け付ける位置指示入力 受付部(308)、
当該画面に表示されるオブジェクトのうち、
(a)当該位置指示入力に指定される位置に表示されるオブジェクトが存在すれば、 当該位置に表示されるオブジェクトのうち、当該順序で最も前のオブジェクトを選択 結果として、
(b)当該位置指示入力に指定される位置に表示されるオブジェクトが存在せず、当 該位置を含むように定められる二次元領域に重なる位置に表示されるオブジェクトが 存在すれば、当該重なる位置に表示されるオブジェクトのうち、当該順序で最も前の オブジェクトを選択結果として、
それぞれ出力する出力部(307)
として機能させることを特徴とするプログラム。
PCT/JP2006/323599 2005-11-29 2006-11-27 オブジェクト選択装置、オブジェクト選択方法、情報記録媒体、ならびに、プログラム WO2007063805A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN2006800448613A CN101317151B (zh) 2005-11-29 2006-11-27 对象选择装置和对象选择方法
KR1020087011318A KR100932592B1 (ko) 2005-11-29 2006-11-27 오브젝트 선택장치, 오브젝트 선택방법 및 프로그램을 기록한 컴퓨터 판독 가능한 정보기록매체
DE602006018647T DE602006018647D1 (de) 2005-11-29 2006-11-27 Objektauswahleinrichtung, objektauswahlverfahren, informationsaufzeichnungsmedium und programm
US12/095,497 US20090309872A1 (en) 2005-11-29 2006-11-27 Object Selecting Device, Object Selecting Method, Information Recording Medium, And Program
EP06833403A EP1956471B1 (en) 2005-11-29 2006-11-27 Object selecting device, object selecting method, information recording medium, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005-343317 2005-11-29
JP2005343317A JP3961545B2 (ja) 2005-11-29 2005-11-29 オブジェクト選択装置、オブジェクト選択方法、ならびに、プログラム

Publications (1)

Publication Number Publication Date
WO2007063805A1 true WO2007063805A1 (ja) 2007-06-07

Family

ID=38092137

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/323599 WO2007063805A1 (ja) 2005-11-29 2006-11-27 オブジェクト選択装置、オブジェクト選択方法、情報記録媒体、ならびに、プログラム

Country Status (8)

Country Link
US (1) US20090309872A1 (ja)
EP (1) EP1956471B1 (ja)
JP (1) JP3961545B2 (ja)
KR (1) KR100932592B1 (ja)
CN (1) CN101317151B (ja)
DE (1) DE602006018647D1 (ja)
TW (1) TWI319541B (ja)
WO (1) WO2007063805A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102935031A (zh) * 2012-12-07 2013-02-20 宋艳霞 一种压力感应自我按摩器

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5401380B2 (ja) * 2010-03-29 2014-01-29 株式会社コナミデジタルエンタテインメント 処理装置、処理方法、ならびに、プログラム
US20120139915A1 (en) * 2010-06-07 2012-06-07 Masahiro Muikaichi Object selecting device, computer-readable recording medium, and object selecting method
US9733789B2 (en) * 2011-08-04 2017-08-15 Eyesight Mobile Technologies Ltd. Interfacing with a device via virtual 3D objects
US10162491B2 (en) * 2011-08-12 2018-12-25 Otoy Inc. Drag and drop of objects between applications
CN107193537B (zh) 2011-12-23 2020-12-11 英特尔公司 经改进的插入指令的装置和方法
US9946540B2 (en) 2011-12-23 2018-04-17 Intel Corporation Apparatus and method of improved permute instructions with multiple granularities
CN104011616B (zh) 2011-12-23 2017-08-29 英特尔公司 改进置换指令的装置和方法
CN104121910A (zh) * 2013-04-28 2014-10-29 腾讯科技(深圳)有限公司 导航方法与装置、终端、服务器及系统
TWI511024B (zh) * 2014-09-09 2015-12-01 Hooloop Corp 透過資料觸發之物件操作方法及系統,及其電腦程式產品
JP6668883B2 (ja) * 2016-03-30 2020-03-18 ブラザー工業株式会社 プログラムおよび情報表示装置
JP6549066B2 (ja) * 2016-07-13 2019-07-24 株式会社コロプラ 没入型仮想空間でオブジェクト操作を制御するためのコンピュータ・プログラムおよびコンピュータ・システム
US20180292952A1 (en) * 2017-04-05 2018-10-11 Riot Games, Inc. Methods and systems for object selection
CN107433036B (zh) * 2017-06-21 2020-09-08 网易(杭州)网络有限公司 一种游戏中对象的选取方法及装置
KR102252110B1 (ko) * 2019-08-07 2021-05-17 한국과학기술연구원 중첩된 가상 오브젝트의 용이하고 정확한 선택을 지원하는 사용자 인터페이스 장치 및 이의 제어 방법
CN115087954A (zh) * 2020-02-10 2022-09-20 三菱电机株式会社 画面数据编辑程序、画面数据编辑装置及画面数据编辑方法
TWI755875B (zh) * 2020-09-29 2022-02-21 微星科技股份有限公司 呈現放大畫面的方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6352266A (ja) * 1986-08-21 1988-03-05 Hitachi Ltd 図形指示方法
JPH01150981A (ja) * 1987-12-08 1989-06-13 Hitachi Ltd 三次元グラフイツクデイスプレイ装置
JPH0981784A (ja) * 1995-09-08 1997-03-28 Nec Corp 3次元オブジェクト選択装置
JP2002042172A (ja) * 2000-07-25 2002-02-08 Matsushita Electric Works Ltd 仮想物体の選択方法、この方法が適用される記録媒体およびサービス
JP2005343317A (ja) 2004-06-03 2005-12-15 Nissan Motor Co Ltd 車両用運転操作補助装置および車両用運転操作補助装置を備える車両

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0073895A1 (en) * 1981-08-28 1983-03-16 Roanoke College Apparatus for decontaminating compressed gas
US4812829A (en) * 1986-05-17 1989-03-14 Hitachi, Ltd. Three-dimensional display device and method for pointing displayed three-dimensional image
JP3166896B2 (ja) * 1995-04-21 2001-05-14 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 画面上に表示された編集対象を選択する方法及び装置
DE69618067T2 (de) * 1995-05-05 2002-08-22 Intergraph Corp Intelligente Auswahl von graphischen Objekten, markanten Punkten und Beziehungen
JP3148133B2 (ja) * 1996-10-30 2001-03-19 三菱電機株式会社 情報検索装置
US20020175911A1 (en) * 2001-05-22 2002-11-28 Light John J. Selecting a target object in three-dimensional space
US8031190B2 (en) * 2004-05-03 2011-10-04 Microsoft Corporation Translating two-dimensional user input on three-dimensional scene
US20060253791A1 (en) * 2005-05-03 2006-11-09 Kuiken David P Simplified interactive graphical user interfaces for sorting through a stack of overlapping windows on a display in order along the Z (depth) axis

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6352266A (ja) * 1986-08-21 1988-03-05 Hitachi Ltd 図形指示方法
JPH01150981A (ja) * 1987-12-08 1989-06-13 Hitachi Ltd 三次元グラフイツクデイスプレイ装置
JPH0981784A (ja) * 1995-09-08 1997-03-28 Nec Corp 3次元オブジェクト選択装置
JP2002042172A (ja) * 2000-07-25 2002-02-08 Matsushita Electric Works Ltd 仮想物体の選択方法、この方法が適用される記録媒体およびサービス
JP2005343317A (ja) 2004-06-03 2005-12-15 Nissan Motor Co Ltd 車両用運転操作補助装置および車両用運転操作補助装置を備える車両

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102935031A (zh) * 2012-12-07 2013-02-20 宋艳霞 一种压力感应自我按摩器
CN102935031B (zh) * 2012-12-07 2014-05-07 宋艳霞 一种压力感应自我按摩器

Also Published As

Publication number Publication date
KR100932592B1 (ko) 2009-12-17
EP1956471A1 (en) 2008-08-13
KR20080056771A (ko) 2008-06-23
TWI319541B (en) 2010-01-11
TW200802063A (en) 2008-01-01
JP2007148855A (ja) 2007-06-14
US20090309872A1 (en) 2009-12-17
CN101317151A (zh) 2008-12-03
EP1956471A4 (en) 2009-04-01
CN101317151B (zh) 2010-09-29
DE602006018647D1 (de) 2011-01-13
JP3961545B2 (ja) 2007-08-22
EP1956471B1 (en) 2010-12-01

Similar Documents

Publication Publication Date Title
JP3961545B2 (ja) オブジェクト選択装置、オブジェクト選択方法、ならびに、プログラム
JP5813948B2 (ja) プログラム及び端末装置
JP5430962B2 (ja) 決定装置、決定方法、ならびに、プログラム
JP4519883B2 (ja) キャラクター表示装置、キャラクター表示方法、ならびに、プログラム
EP2667294A2 (en) Information processing apparatus, method for information processing, and game apparatus
KR101139379B1 (ko) 지시내용 결정장치, 지시내용 결정방법 및 정보기록매체
JP2006314632A (ja) ゲームプログラムおよびゲーム装置
JP2007257262A (ja) 画像生成装置、画像生成方法、ならびに、プログラム
JP4852555B2 (ja) 画像処理装置、画像処理方法、ならびに、プログラム
JP4743721B2 (ja) ゲームプログラム、ゲーム装置、ゲームシステム、および方法
JP6715361B2 (ja) 情報処理装置,情報処理方法,及びゲーム装置
JP3961525B2 (ja) 画像処理装置、画像処理方法、ならびに、プログラム
KR102587645B1 (ko) 터치스크린 제스처를 사용하여 정밀 포지셔닝하기 위한 시스템 및 방법
JP4575937B2 (ja) 画像生成装置、画像生成方法、ならびに、プログラム
CN115168925A (zh) 视图导航方法及装置
JP6480537B2 (ja) 情報処理装置,情報処理方法,及びゲーム装置
JP5155427B2 (ja) ゲーム装置、ゲーム装置の制御方法、ならびに、プログラム
JP4637205B2 (ja) 表示装置、表示方法、ならびに、プログラム
JP2004086274A (ja) 情報処理装置
JP5043903B2 (ja) 画像処理装置、画像処理方法、ならびに、プログラム
JP4750085B2 (ja) 画像表示装置、画像表示方法、ならびに、プログラム
JP2011059738A (ja) 画像処理装置、処理方法、ならびに、プログラム
JP2013050895A (ja) ゲーム装置、ゲーム装置の制御方法、ならびに、プログラム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200680044861.3

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1020087011318

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2006833403

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 12095497

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE