WO2013078859A1 - Three-dimensional interface display device, method and terminal - Google Patents

Three-dimensional interface display device, method and terminal Download PDF

Info

Publication number
WO2013078859A1
WO2013078859A1 PCT/CN2012/077950 CN2012077950W WO2013078859A1 WO 2013078859 A1 WO2013078859 A1 WO 2013078859A1 CN 2012077950 W CN2012077950 W CN 2012077950W WO 2013078859 A1 WO2013078859 A1 WO 2013078859A1
Authority
WO
WIPO (PCT)
Prior art keywords
dimensional
module
graphics
rendering
interface
Prior art date
Application number
PCT/CN2012/077950
Other languages
French (fr)
Chinese (zh)
Inventor
顾伟
Original Assignee
中兴通讯股份有限公司
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 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2013078859A1 publication Critical patent/WO2013078859A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering

Definitions

  • the present invention relates to the field of graphic user interface technologies of terminals, and in particular to a three-dimensional interface display device, method and terminal. Background technique
  • a two-dimensional graphics technology is generally used to imitate a three-dimensional interface. Since the three-dimensional graphics technology is not used, the interactive experience cannot achieve the effect of the real three-dimensional interface, resulting in a poor user experience.
  • the Chinese Patent Publication No. CN101655989 the invention name is "a mobile phone 3D special effect graphical user interface system and method", and a similar three-dimensional interface display method is disclosed in the patent application published on Feb. 24, 2010.
  • the working principle is as follows: through the 3D special effect processing module, the user interface resource picture is subjected to image flipping, twisting, color changing, etc., and then the processed pictures are arranged in a logical order and stored in the phone memory; when the user selects to enter the menu In the interface, the human interface module calls the above pictures in a logical order to make them stand up. The body flips the effect to achieve a three-dimensional effect.
  • the shortcoming of this technology is that the picture of its operation is a two-dimensional picture resource, using two-dimensional graphics technology to imitate the three-dimensional interface, and can not produce a three-dimensional figure close to the real feeling, thereby reducing the user experience, and at the same time, the method is also The three-dimensional picture that is copied can not be flipped in various directions such as up, down, left and right, and bevel, so the user experience is further suppressed.
  • the terminal using the three-dimensional interface display device and method can obtain a true three-dimensional interface without three-dimensional graphics hardware.
  • the present invention adopts the following technical solutions:
  • a three-dimensional interface display device comprising a three-dimensional interface view module, a three-dimensional controller, and a three-dimensional rendering engine, wherein
  • a three-dimensional interface view module for detecting a user's operation on the three-dimensional graphic and transmitting it to the three-dimensional controller
  • a three-dimensional controller configured to send a three-dimensional interface rendering instruction to the three-dimensional processing engine according to a user operation
  • a three-dimensional rendering engine configured to perform a rendering process on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction.
  • the three-dimensional interface view module includes a graphical user interface window data module, a user input detection module, and a screen interaction module, where
  • a graphical user interface window data module for encapsulating window information of the GUI of the graphical user interface;
  • a user input detection module for detecting the operation of the user on the three-dimensional graphics and transmitting the same to the three-dimensional controller;
  • a screen interaction module for displaying a three-dimensional interface.
  • the three-dimensional rendering engine includes at least a model coordinate transformation module and a world coordinate transformation.
  • Change module, object culling module, insert render list module, back erase module, camera coordinate transformation module, illumination shading module, 3D object space cropping module, texture mapping module, perspective transformation module, image space clipping module, and rasterization module One of which
  • model coordinate transformation module configured to transform model coordinates of the three-dimensional graphics
  • a world coordinate transformation module configured to transform model coordinates into world coordinates according to the position of the three-dimensional graphics
  • An object culling module for selecting and rejecting portions of the three-dimensional graphics that are invisible relative to the camera viewpoint before performing world coordinate to camera coordinate transformation
  • a back side elimination module for eliminating a polygon surface in the occluded three-dimensional figure
  • a camera coordinate transformation module configured to transform a three-dimensional graphic according to a camera viewpoint
  • a three-dimensional object spatial cutting module configured to cut a visible portion of the three-dimensional graphic according to the three-dimensional visual body
  • a lighting coloring module for rendering a three-dimensional graphic from a wireframe to a solid to enhance the three-dimensional realism of the three-dimensional graphic
  • a texture mapping module configured to paste a two-dimensional image as a texture onto a polygonal surface of the three-dimensional graphic
  • a perspective transformation module configured to transform camera coordinates into perspective coordinates, so that the three-dimensional graphics are converted into two-dimensional images
  • An image space cropping module for transforming perspective coordinates into screen coordinates; and for cutting a portion of the three-dimensional graphic that crosses the screen boundary;
  • Rasterization module for rendering 3D graphics to the display buffer.
  • the three-dimensional rendering engine performs rendering processing on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction, including: Converting the model coordinate values of the three-dimensional graphics into world coordinate values according to the user's operation on the three-dimensional graphics;
  • the three-dimensional graphics that can only be seen part of the cropping are cut;
  • a terminal comprising a three-dimensional interface display device as described above, the device comprising a three-dimensional interface view module, a three-dimensional controller, and a three-dimensional rendering engine, wherein
  • a three-dimensional interface view module for detecting a user's operation on the three-dimensional graphic and transmitting it to the three-dimensional controller
  • a three-dimensional controller configured to send a three-dimensional interface rendering instruction to the three-dimensional processing engine according to a user operation
  • a three-dimensional rendering engine configured to perform a rendering process on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction.
  • a three-dimensional interface display method is applied to a three-dimensional interface display device, the three-dimensional interface display device comprising a three-dimensional interface view module, a three-dimensional controller, and a three-dimensional rendering engine, the method comprising:
  • the three-dimensional interface view module detects the user's operation on the three-dimensional graphics and sends it to the three-dimensional controller;
  • the three-dimensional controller sends a three-dimensional interface rendering instruction to the three-dimensional processing engine according to the user's operation;
  • the three-dimensional rendering engine performs a rendering process on the operated three-dimensional graphics in accordance with the three-dimensional interface rendering instructions.
  • the three-dimensional interface view module includes a graphical user interface window data module, a user input detection module, and a screen interaction module, where
  • a graphical user interface window data module for encapsulating window information of the GUI of the graphical user interface;
  • a user input detection module for detecting the operation of the user on the three-dimensional graphics and transmitting the same to the three-dimensional controller;
  • a screen interaction module for displaying a three-dimensional interface.
  • the three-dimensional rendering engine includes at least a model coordinate transformation module, a world coordinate transformation module, an object culling module, an insertion rendering list module, a back surface elimination module, a camera coordinate transformation module, a light coloring module, a three-dimensional object space cropping module, and a texture mapping.
  • a module, a perspective transformation module, an image space cropping module, and a rasterization module wherein
  • model coordinate transformation module configured to transform model coordinates of the three-dimensional graphics
  • a world coordinate transformation module configured to transform model coordinates into world coordinates according to the position of the three-dimensional graphics
  • An object culling module for selecting and rejecting portions of the three-dimensional graphics that are invisible relative to the camera viewpoint before performing world coordinate to camera coordinate transformation
  • a back side elimination module for eliminating a polygon surface in the occluded three-dimensional figure
  • a camera coordinate transformation module configured to transform a three-dimensional graphic according to a camera viewpoint
  • a three-dimensional object spatial cutting module configured to cut a visible portion of the three-dimensional graphic according to the three-dimensional visual body
  • a lighting coloring module for rendering a three-dimensional graphic from a wireframe to a solid to enhance the three-dimensional realism of the three-dimensional graphic;
  • a texture mapping module configured to paste a two-dimensional image as a texture onto a polygon surface of the three-dimensional graphic;
  • a perspective transformation module configured to transform camera coordinates into perspective coordinates, so that the three-dimensional graphics are converted into two-dimensional images
  • An image space cropping module for transforming perspective coordinates into screen coordinates; and for cutting a portion of the three-dimensional graphic that crosses the screen boundary;
  • Rasterization module for rendering 3D graphics to the display buffer.
  • the three-dimensional rendering engine performs rendering processing on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction, including:
  • the three-dimensional graphics that can only be seen part of the cropping are cut;
  • the above-mentioned technical solution of the present invention has the beneficial effects that the terminal (such as a mobile phone) without hardware acceleration of the three-dimensional graphics can also use the three-dimensional interface display device and method provided by the present invention to obtain realism.
  • a strong three-dimensional interface provides users with better interaction risks.
  • FIG. 1 is a schematic structural diagram of a three-dimensional interface display device according to an embodiment of the present invention.
  • FIG. 2 is a schematic flowchart of a method for displaying a three-dimensional interface according to an embodiment of the present invention
  • FIG. 3 is a flow chart of making a three-dimensional graphic (three-dimensional cube) according to an embodiment of the present invention
  • FIG. 4 is a flow chart of each plane for creating a three-dimensional graphic (three-dimensional cube) according to an embodiment of the present invention
  • FIG. 5 is a flowchart of drawing a three-dimensional interface according to an embodiment of the present invention. detailed description
  • an embodiment of the present invention provides a three-dimensional interface display device, including a three-dimensional interface view module 10, a three-dimensional controller 20, and a three-dimensional rendering engine 30, wherein
  • the three-dimensional interface view module 10 is configured to detect a user's operation on the three-dimensional graphic and send it to the three-dimensional controller 20;
  • a three-dimensional controller 20 configured to send a three-dimensional interface rendering instruction to the three-dimensional processing engine according to a user operation
  • the three-dimensional rendering engine 30 is configured to perform a rendering process on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction.
  • the three-dimensional interface display device provided by the embodiment of the present invention is designed by using the MVC mode, and the three-dimensional rendering engine 30, the three-dimensional interface view module 10, and the three-dimensional controller 20 are separated and decoupled, so that the design and development of the three-dimensional interface are A lot of flexibility.
  • the three-dimensional interface view module 10 is used to solve the portability problem, because the three-dimensional interface display device provided by the embodiment of the present invention needs to be independent of the mobile phone graphical user interface GUI, so that different terminals (such as mobile phones, the present invention can be reduced.
  • the embodiment will mainly explain the development cost of the three-dimensional interface by taking a mobile phone as an example.
  • the three-dimensional interface view module 10 is provided to encapsulate the mobile phone graphical user interface GUI, so that when the three-dimensional interface display device is transplanted to the new mobile phone, all that is required is to modify the three-dimensional interface view module 10 on the new mobile phone. The rest is unchanged. For example, on different mobile phones, the displayed three-dimensional interface is the same, except that only its three-dimensional interface view module 10 is modified.
  • the 3D interface view module 10 is also used to interact with the user. Specifically, it encapsulates a window of the mobile phone graphical user interface GUI and has a user input level one screen output function for transmitting user input to the three dimensional controller 20.
  • the three-dimensional interface view module 10 includes a graphical user interface window data module 101 , a user input detection module 102 , and a screen interaction module 103 , wherein the graphical user interface window data module 101 is configured to encapsulate graphics. Window information of the user interface GUI;
  • the user input detection module 102 is configured to detect a user's operation on the three-dimensional graphic and send it to the three-dimensional controller 20;
  • the screen interaction module 103 is configured to display a three-dimensional interface.
  • the three-dimensional controller 20 is used to solve the scalability problem because their user experience is different for various three-dimensional interfaces, but the three-dimensional graphics rendering is consistent and the user interaction is also consistent. Therefore, in the actual implementation process, various three-dimensional interfaces may have their own three-dimensional controller 20, and the rendering processing for the three-dimensional graphics is uniformly processed by the three-dimensional processing engine, and the human-computer interaction is unified by the three-dimensional interface view module. 10 processing.
  • the three-dimensional interface is allowed to replace the three-dimensional controller 20, and the corresponding three-dimensional controller 20 can be dynamically turned on or off according to user needs, even during operation. Replacement of the three-dimensional controller 20.
  • the 3D interface can be switched between various styles.
  • the function of the three-dimensional controller 20 is to obtain user input and interpret, for example, to interpret the user's operation on the three-dimensional graphics to obtain the user's operational intentions for the three-dimensional interface. Specifically, it changes the visual effect of the 3D interface based on the user's operation on the 3D graphics.
  • the 3D rendering engine 30 is used to solve high performance problems because the processing speed of the 3D interface display device must be very fast in order to perform a smooth 3D interface display without hardware acceleration. Therefore, the 3D rendering engine 30, which consumes the most performance and has the most code, is independent, and is designed for high-performance 3D rendering. Moreover, when optimizing the performance of the 3D rendering engine 30, it is not necessary to modify the 3D interface on various mobile phones.
  • the function of the 3D rendering engine 30 is to render 3D graphics, which holds the data, state and program logic of all 3D graphics. Specifically, it handles the data structure of the 3D graphics (including all light sources, motion, and general state information) and renders 3D graphics from the point of view of the user or camera.
  • the three-dimensional rendering engine 30 includes at least a model coordinate transformation module 301 , a world coordinate transformation module 302 , an object culling module 303 , an insertion rendering list module 304 , a back surface elimination module 305 , a camera coordinate transformation module 306 , and a light coloring module . 307.
  • the model coordinate transformation module 301 is configured to transform model coordinates of the three-dimensional graphics. Transform the model coordinates of the 3D graphics. For example, performing rotation, scaling, or other vertex operations in place, that is, modifying model coordinates.
  • the world coordinate transformation module 302 is configured to transform the model coordinates into world coordinates according to the position of the three-dimensional graphics
  • An object culling module 303 configured to select and before performing world coordinate to camera coordinate transformation Exclude parts of the 3D graphics that are invisible relative to the camera viewpoint. Before performing world coordinate to camera coordinate transformation, it is necessary to determine which three-dimensional graphics are visible relative to the camera viewpoint so as not to render them erroneously.
  • An insert list module 304 is inserted for inserting each polygon face of the visible portion of the three-dimensional graphic into the render list.
  • a render list is an array of pointers, each of which points to a self-contained, renderable polygon face. Each polygon face of the visible 3D graphic is inserted into the render list.
  • the back surface elimination module 305 is configured to eliminate the polygon surface in the occluded three-dimensional graphics; the camera coordinate transformation module 306 is configured to transform the three-dimensional graphics according to the camera viewpoint; and the three-dimensional object space clipping module 308 is configured to perform the three-dimensional object alignment The visible part of the 3D graphics is cropped;
  • the illumination shading module 307 is configured to render the three-dimensional graphics from the wireframe into a solid to enhance the three-dimensional realism of the three-dimensional graphics;
  • a texture mapping module 309 configured to paste a two-dimensional image as a texture onto a polygon surface of the three-dimensional graphic
  • a perspective transformation module 310 configured to transform camera coordinates into perspective coordinates, so that the three-dimensional graphics are transformed into a two-dimensional image
  • An image space cropping module 311 is configured to transform perspective coordinates into screen coordinates; and is also used for cutting a portion of the three-dimensional graphics that crosses the screen boundary;
  • a rasterization module 312 is configured to render the three-dimensional graphics to the display buffer.
  • the step of performing the rendering process on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction by the three-dimensional rendering engine 30 includes:
  • FIG. 5 is a flowchart of drawing a three-dimensional interface according to an embodiment of the present invention, where the drawing process includes the following steps:
  • Step S401 Transform model coordinates. Performs flip, scale, or other vertex operations on the 3D cube, modifying the model coordinate values of the 3D cube.
  • the model coordinates are transformed into world coordinates based on the position of the 3D graphics.
  • Step S402 Insert an object into the rendering list.
  • the polygons in each object are extracted and stored uniformly in the render list.
  • a render list is a set of pointers, each of which points to a self-contained, renderable polygon face, and each polygon face of the visible 3D graph is inserted into the render list.
  • Step S403 Create a camera transformation matrix. Used for matrix operations in the following steps.
  • Step S404 eliminating the polygon on the back side.
  • the back that is invisible to the human eye is not drawn.
  • the polygons on the back side of the rendered list are eliminated.
  • Step S405 Transform the world coordinates to the camera coordinates.
  • the possible visible three-dimensional graphics are transformed according to the camera position and viewing angle.
  • Step S406 performing three-dimensional cropping on the polygon. Only one can be seen according to the 3D view Divided into three-dimensional graphics.
  • Step S407 Perform depth sorting on the rendering list. Used to speed up the rendering of polygons in the render list.
  • Step S408 Convert camera coordinates to screen coordinates. Renders 3D graphics from solids to wireframes to enhance the 3D realism of 3D graphics. Use a 2D image as a texture attached to a polygon face of a 3D graphic. Convert camera coordinates to perspective coordinates and transform 3D graphics into 2D images. Transform perspective coordinates into screen coordinates, and some polygon images may cross the screen boundary and need to be cropped.
  • Step S409 drawing a rendered scene. Render the final image of the 3D graphic into the memory of the phone screen. For example, a three-dimensional cube is drawn in an opaque manner, and a three-dimensional cube image is drawn in a translucent manner, the three-dimensional cube mirroring simulates the reflection of the three-dimensional cube, the flip direction is like a reflection, and the reverse direction of the three-dimensional cube is reversed. .
  • Step S410 completing drawing of the three-dimensional cube.
  • the embodiment of the present invention further provides a terminal, which includes the three-dimensional interface display device as described above.
  • the device includes a three-dimensional interface view module 10, a three-dimensional controller 20, and a three-dimensional rendering engine 30. , among them,
  • the three-dimensional interface view module 10 is configured to detect a user's operation on the three-dimensional graphic and send it to the three-dimensional controller 20;
  • a three-dimensional controller 20 configured to send a three-dimensional interface rendering instruction to the three-dimensional processing engine according to a user operation
  • the three-dimensional rendering engine 30 is configured to perform a rendering process on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction.
  • an embodiment of the present invention further provides a three-dimensional interface display device, where the three-dimensional interface display device includes a three-dimensional interface view module 10, a three-dimensional controller 20, and a three-dimensional rendering engine 30, and the method includes:
  • the three-dimensional interface view module 10 detects the user's operation on the three-dimensional graphics and sends it to the three-dimensional controller 20;
  • the three-dimensional controller 20 sends a three-dimensional interface rendering instruction to the three-dimensional processing engine according to a user operation;
  • the three-dimensional rendering engine 30 performs a rendering process on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction.
  • FIG. 3 it is a schematic flowchart of a method for manufacturing a three-dimensional cube according to an embodiment of the present invention, where the process includes:
  • Step S201 Setting a drawing area. Determine the position of the 3D cube on the screen of the phone. The part of the 3D cube that is inside the drawing area will be drawn, and the part outside the drawing area will be cropped and will not be drawn.
  • Step S202 Set an effective area.
  • the 3D cube will react interactively when the user's touch location is within the active area. For example, when the user's finger moves in the active area, the 3D cube will flip in the direction of the finger movement, and the 3D cube will not flip when the user's finger moves outside the effective area.
  • Step S203 Create a new frame buffer.
  • the three-dimensional interface engine of the present invention uses a double buffering mechanism. In the mobile phone screen, the entire three-dimensional interface in the frame buffer is scanned line by line, rather than the process of drawing a three-dimensional interface.
  • step S204 the judgment is the last face. Loop through the six planes of the 3D cube.
  • step S205 creating a plane of the three-dimensional cube. Make each plane of the 3D cube, with The body steps are described below with respect to Figure 4.
  • Step S206 Create a new drawing area background. This image acts as the background for the 3D cube.
  • Step S207 creating a new camera.
  • the human eye is simulated.
  • a person observes a three-dimensional object through an eye, and an object that is close to himself looks large, and an object that is far away from himself looks small, which gives a real sense of space.
  • Step S208 Create a new depth cache.
  • objects close to you will block objects far away from you, and the depth buffer preserves the near and far position of the object.
  • the two-dimensional space uses two axes, X and Y.
  • the three-dimensional space uses three axes: X, ⁇ , and ,.
  • the value in the depth buffer represents the value on the ⁇ axis.
  • Step S209 creating a new rendering scene.
  • the rendered scene includes specific data for the render list, depth buffer, screen memory, and transparency, which determines how the 3D object is drawn.
  • Step S210 Create a new translucent table.
  • the translucent three-dimensional cube image 102 is the reflection of the three-dimensional cube 101, which is used when drawing the image.
  • Step S211 completing the production of the three-dimensional cube.
  • Step S301 Set a three-dimensional cube surface label.
  • the three-dimensional cube has six faces, which are located between the top and bottom, and the values are different. It is determined by the label to determine what value to give the face.
  • Step S302 Create a new vertex list. This list holds the position of each vertex of the 3D cube face, using model coordinates, all polygons are made up of vertices.
  • Step S303 Create a new texture coordinate list.
  • the list holds the coordinate positions of the texture to be attached to the face, and the image is sampled by these coordinate positions, which then form the pixel data of the texture.
  • Step S304 creating a new vertex texture mapping table. This list establishes vertex and texture coordinates - The corresponding relationship determines which specific pixel data in the texture is used by the vertex.
  • Step S305 creating a new polygon list.
  • the list holds polygon data, where the polygons are all triangles.
  • the advantage of using triangles is that each vertex of the triangle is coplanar, and the triangle structure is simple, making it easy to draw three-dimensional graphics algorithms quickly.
  • a triangle is the basic primitive for a 3D graphics rendering pipeline. All 3D objects are made up of triangles.
  • Step S306 setting an object position. Determine the position of a three-dimensional object in three-dimensional space, that is, its position in the world coordinate system.
  • Step S307 Set an object coordinate axis.
  • the 3D object has a model coordinate axis for recording the orientation, using world coordinates.
  • you flip through the three axes of X, ⁇ , and ⁇ you can know the orientation of the three-dimensional object.
  • Step S308 Match the object size to the drawing area.
  • the 3D cube automatically matches the size of the drawing area so that it can be drawn completely.
  • Step S309 creating a new texture.
  • Each 3D cube face is filled with an image, and the texture is used to scale the image and match the size of the 3D cube face.
  • Step S310 setting values of all the lists. Vertex lists, texture coordinate lists, and polygon lists are filled with exact values that are used in the drawing process.
  • Step S311 completing the production of the three-dimensional cube surface.
  • the step of the three-dimensional rendering engine 30 performing rendering processing on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction includes:
  • FIG. 5 is a flowchart of drawing a three-dimensional interface according to an embodiment of the present invention, where the drawing process includes the following steps:
  • Step S401 Transform model coordinates. Performs flip, scale, or other vertex operations on the 3D cube, modifying the model coordinate values of the 3D cube.
  • the model coordinates are transformed into world coordinates based on the position of the 3D graphics.
  • Step S402 Insert an object into the rendering list.
  • the polygons in each object are extracted and stored uniformly in the render list.
  • a render list is a set of pointers, each of which points to a self-contained, renderable polygon face, and each polygon face of the visible 3D graph is inserted into the render list.
  • Step S403 Create a camera transformation matrix. Used for matrix operations in the following steps.
  • Step S404 eliminating the polygon on the back side.
  • the back that is invisible to the human eye is not drawn.
  • the polygons on the back side of the rendered list are eliminated.
  • Step S405 Transform the world coordinates to the camera coordinates.
  • the possible visible three-dimensional graphics are transformed according to the camera position and viewing angle.
  • Step S406 Perform three-dimensional cropping on the polygon. According to the 3D view, the 3D graphics that can only be seen are cropped.
  • Step S407 performing depth sorting on the rendering list. Used to speed up the drawing of polygons in the render list.
  • Step S408 Convert camera coordinates to screen coordinates. Renders 3D graphics from solids to wireframes to enhance the 3D realism of 3D graphics. Use a 2D image as a texture attached to a polygon face of a 3D graphic. The camera coordinates are transformed into perspective coordinates, and the three-dimensional graphics are transformed into two-dimensional images. Transform perspective coordinates into screen coordinates, and some polygon images may cross the screen boundary and need to be cropped.
  • Step S409 drawing a rendered scene. Render the final image of the 3D graphic into the memory of the phone screen. For example, a three-dimensional cube is drawn in an opaque manner, and a three-dimensional cube image is drawn in a translucent manner, the three-dimensional cube mirroring simulates the reflection of the three-dimensional cube, the flip direction is like a reflection, and the reverse direction of the three-dimensional cube is reversed. .
  • Step S410 completing drawing of the three-dimensional cube.
  • the three-dimensional interface view module detects the user's operation on the three-dimensional graphics and sends it to the three-dimensional controller; the three-dimensional controller sends a three-dimensional interface rendering instruction to the three-dimensional processing engine according to the user's operation; the three-dimensional rendering engine renders according to the three-dimensional interface
  • the instruction performs a rendering process on the operated three-dimensional graphics.
  • the three-dimensional interface display device and method provided by the present invention can also be used to obtain a three-dimensional interface with a strong realistic feeling, thereby providing a better interactive experience for the user.

Abstract

Disclosed are a three-dimensional interface display device, method and terminal, the method comprising: a three-dimensional interface view module detects the operation of a user on a three-dimensional graph and transmits the same to a three-dimensional controller; the three-dimensional controller transmits a three-dimensional interface rendering instruction to a three-dimensional rendering engine on the basis of the operation of the user; and the three-dimensional rendering engine renders the operated three-dimensional graph on the basis of the three-dimensional interface rendering instruction. With the present invention, a terminal without a three-dimensional graph hardware accelerator can also obtain a three-dimensional interface with a strong sense of reality, thus providing better interaction experience for the user.

Description

一种三维界面显示装置、 方法及终端 技术领域  Three-dimensional interface display device, method and terminal
本发明涉及终端的图形用户界面技术领域, 具体而言, 涉及一种三维 界面显示装置、 方法及终端。 背景技术  The present invention relates to the field of graphic user interface technologies of terminals, and in particular to a three-dimensional interface display device, method and terminal. Background technique
随着电子技术的不断发展以及手机的日益普及, 人们对于手机的功能 要求也日益提高, 例如, 目前手机设计公司都非常重视手机图形用户界面 的美化设计。 这是因为手机产品出色的外观设计对于商品的销售与推广而 言, 有着举足轻重的作用, 为此, 向手机用户提供优美的图形用户界面以 为其提供良好的交互体验便显得尤为重要。  With the continuous development of electronic technology and the increasing popularity of mobile phones, people's functional requirements for mobile phones are also increasing. For example, mobile phone design companies are paying great attention to the beautification design of mobile phone graphical user interfaces. This is because the excellent design of mobile phone products plays an important role in the sales and promotion of products. Therefore, it is very important to provide mobile users with a beautiful graphical user interface to provide a good interactive experience.
目前, 为了向手机用户提供更好的交互体验, 常常对于人机交互界面 采用三维界面的形式。 其流畅动效、 细腻柔和的画面、 真实的空间感, 能 更真实的贴近用户感受, 能使手机用户在更高层次的界面得到享受。  Currently, in order to provide a better interactive experience for mobile phone users, a three-dimensional interface is often adopted for the human-computer interaction interface. Its smooth and dynamic effect, delicate and soft picture, real sense of space, can be more realistic and close to the user's feelings, enabling mobile phone users to enjoy at a higher level of interface.
传统的在没有三维图形硬件加速的手机上进行三维图形界面显示的方 法中, 一般采用的是利用二维图形技术去仿造三维界面。 由于不是使用三 维图形技术, 交互体验不能达到真实三维界面的效果, 从而使得用户体验 较差。  In the traditional method of displaying a three-dimensional graphical interface on a mobile phone without 3D graphics hardware acceleration, a two-dimensional graphics technology is generally used to imitate a three-dimensional interface. Since the three-dimensional graphics technology is not used, the interactive experience cannot achieve the effect of the real three-dimensional interface, resulting in a poor user experience.
例如中国专利公开号为 CN101655989,发明名称为《一种手机 3D特效 图形用户界面系统及方法》, 公开日为 2010年 2月 24日的专利申请公开了 一种类似的三维界面显示方法, 该技术的工作原理是: 通过其三维特效处 理模块对用户界面资源图片进行图片翻转、 扭曲、 变色等运算处理, 然后 将处理后的图片按照逻辑顺序进行排列, 存储在手机内存中; 当用户选择 进入菜单界面时, 人机接口模块按照逻辑顺序调用上述图片, 使其产生立 体翻转特效, 从而达到三维立体效果。 For example, the Chinese Patent Publication No. CN101655989, the invention name is "a mobile phone 3D special effect graphical user interface system and method", and a similar three-dimensional interface display method is disclosed in the patent application published on Feb. 24, 2010. The working principle is as follows: through the 3D special effect processing module, the user interface resource picture is subjected to image flipping, twisting, color changing, etc., and then the processed pictures are arranged in a logical order and stored in the phone memory; when the user selects to enter the menu In the interface, the human interface module calls the above pictures in a logical order to make them stand up. The body flips the effect to achieve a three-dimensional effect.
该技术的不足之处在于, 其操作的图片是二维图片资源, 采用二维图 形技术以仿造三维界面, 不能制作出接近于真实感受的三维图形, 从而降 低了用户体验, 同时, 该方法也无法让其仿造的三维立体图片进行上下、 左右、 斜角等各种方向的翻转, 因此其用户体验进一步被遏制。 发明内容  The shortcoming of this technology is that the picture of its operation is a two-dimensional picture resource, using two-dimensional graphics technology to imitate the three-dimensional interface, and can not produce a three-dimensional figure close to the real feeling, thereby reducing the user experience, and at the same time, the method is also The three-dimensional picture that is copied can not be flipped in various directions such as up, down, left and right, and bevel, so the user experience is further suppressed. Summary of the invention
本发明的目的在于提供一种三维界面显示装置、 方法及终端, 采用所 述三维界面显示装置及方法的终端, 在没有三维图形硬件时, 能够获得真 实的三维界面。  It is an object of the present invention to provide a three-dimensional interface display device, method and terminal. The terminal using the three-dimensional interface display device and method can obtain a true three-dimensional interface without three-dimensional graphics hardware.
为了达到本发明的目的, 本发明采用以下技术方案:  In order to achieve the object of the present invention, the present invention adopts the following technical solutions:
一种三维界面显示装置, 包括三维界面视图模块、 三维控制器, 以及 三维渲染引擎, 其中,  A three-dimensional interface display device, comprising a three-dimensional interface view module, a three-dimensional controller, and a three-dimensional rendering engine, wherein
三维界面视图模块, 用于检测用户对三维图形的操作并将其发送至三 维控制器;  a three-dimensional interface view module for detecting a user's operation on the three-dimensional graphic and transmitting it to the three-dimensional controller;
三维控制器, 用于依据用户的操作向三维处理引擎发送三维界面渲染 指令;  a three-dimensional controller, configured to send a three-dimensional interface rendering instruction to the three-dimensional processing engine according to a user operation;
三维渲染引擎, 用于依据所述三维界面渲染指令对被操作的三维图形 执行渲染处理。  And a three-dimensional rendering engine, configured to perform a rendering process on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction.
优选地, 所述三维界面视图模块包括图形用户界面窗口数据模块、 用 户输入检测模块, 以及屏幕交互模块, 其中,  Preferably, the three-dimensional interface view module includes a graphical user interface window data module, a user input detection module, and a screen interaction module, where
图形用户界面窗口数据模块,用于封装图形用户界面 GUI的窗口信息; 用户输入检测模块, 用于检测用户对三维图形的操作并将其发送至三 维控制器;  a graphical user interface window data module for encapsulating window information of the GUI of the graphical user interface; a user input detection module for detecting the operation of the user on the three-dimensional graphics and transmitting the same to the three-dimensional controller;
屏幕交互模块, 用于显示三维界面。  A screen interaction module for displaying a three-dimensional interface.
优选地, 所述三维渲染引擎至少包括模型坐标变换模块、 世界坐标变 换模块、 物体剔除模块、 插入渲染列表模块、 背面消除模块、 相机坐标变 换模块、 光照着色模块、 三维物体空间裁剪模块、 纹理映射模块、 透视变 换模块、 图像空间裁剪模块、 以及光栅化模块中的一种, 其中, Preferably, the three-dimensional rendering engine includes at least a model coordinate transformation module and a world coordinate transformation. Change module, object culling module, insert render list module, back erase module, camera coordinate transformation module, illumination shading module, 3D object space cropping module, texture mapping module, perspective transformation module, image space clipping module, and rasterization module One of which
模型坐标变换模块, 用于对三维图形的模型坐标进行变换;  a model coordinate transformation module, configured to transform model coordinates of the three-dimensional graphics;
世界坐标变换模块, 用于依据三维图形的位置将模型坐标变换为世界 坐标;  a world coordinate transformation module, configured to transform model coordinates into world coordinates according to the position of the three-dimensional graphics;
物体剔除模块, 用于在执行世界坐标到相机坐标变换之前, 选择并剔 除三维图形中相对相机视点而言不可见的部分;  An object culling module for selecting and rejecting portions of the three-dimensional graphics that are invisible relative to the camera viewpoint before performing world coordinate to camera coordinate transformation;
插入渲染列表模块, 用于将三维图形的可见部分的每个多边形面插入 到渲染列表中;  Inserting a render list module for inserting each polygon face of the visible portion of the three-dimensional graphic into the render list;
背面消除模块, 用于消除被遮挡的三维图形中的多边形面;  a back side elimination module for eliminating a polygon surface in the occluded three-dimensional figure;
相机坐标变换模块, 用于依据相机视点对三维图形进行变换; 三维物体空间裁剪模块, 用于依据三维视景体对三维图形中可见的部 分进行裁剪;  a camera coordinate transformation module, configured to transform a three-dimensional graphic according to a camera viewpoint; a three-dimensional object spatial cutting module, configured to cut a visible portion of the three-dimensional graphic according to the three-dimensional visual body;
光照着色模块, 用于将三维图形由线框渲染为实体, 以增强三维图形 的三维真实感;  A lighting coloring module for rendering a three-dimensional graphic from a wireframe to a solid to enhance the three-dimensional realism of the three-dimensional graphic;
纹理映射模块, 用于将一幅二维图像作为纹理贴到三维图形的一个多 边形面上;  a texture mapping module, configured to paste a two-dimensional image as a texture onto a polygonal surface of the three-dimensional graphic;
透视变换模块, 用于将相机坐标变换为透视坐标, 以使得三维图形变 换为二维图片;  a perspective transformation module, configured to transform camera coordinates into perspective coordinates, so that the three-dimensional graphics are converted into two-dimensional images;
图像空间裁剪模块, 用于将透视坐标变换为屏幕坐标; 还用于将越过 了屏幕边界的三维图形的部分进行裁剪;  An image space cropping module for transforming perspective coordinates into screen coordinates; and for cutting a portion of the three-dimensional graphic that crosses the screen boundary;
光栅化模块, 用于渲染三维图形到显示緩沖区。  Rasterization module for rendering 3D graphics to the display buffer.
优选地, 所述三维渲染引擎依据三维界面渲染指令对被操作的三维图 形执行渲染处理包括: 依据用户对三维图形的操作, 将三维图形的模型坐标值变换为世界坐 标值; Preferably, the three-dimensional rendering engine performs rendering processing on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction, including: Converting the model coordinate values of the three-dimensional graphics into world coordinate values according to the user's operation on the three-dimensional graphics;
将三维图形的每个多边形面插入到渲染列表中;  Insert each polygon face of the 3D graphic into the render list;
创建照相机变换矩阵;  Create a camera transformation matrix;
消除处于背面的多边形;  Eliminate polygons on the back side;
依据相机视点将三维图形的世界坐标值变换为相机坐标值;  Converting the world coordinate value of the three-dimensional graphic into a camera coordinate value according to the camera viewpoint;
根据三维视景体对只能看到一部分的三维图形进行裁剪;  According to the three-dimensional view body, the three-dimensional graphics that can only be seen part of the cropping are cut;
对渲染列表执行深度排序;  Perform depth sorting on the render list;
将三维图形的相机坐标值变换为屏幕坐标值, 将三维图形由线框渲染 为实体;  Converting the camera coordinate values of the three-dimensional graphics into screen coordinate values, and rendering the three-dimensional graphics from the wireframe to an entity;
绘制渲染场景, 并将渲染后的三维图形保存到显存中。  Draw the rendered scene and save the rendered 3D graphics to the video memory.
一种终端, 其包括如上所述的三维界面显示装置, 所述装置包括三维 界面视图模块、 三维控制器, 以及三维渲染引擎, 其中,  A terminal comprising a three-dimensional interface display device as described above, the device comprising a three-dimensional interface view module, a three-dimensional controller, and a three-dimensional rendering engine, wherein
三维界面视图模块, 用于检测用户对三维图形的操作并将其发送至三 维控制器;  a three-dimensional interface view module for detecting a user's operation on the three-dimensional graphic and transmitting it to the three-dimensional controller;
三维控制器, 用于依据用户的操作向三维处理引擎发送三维界面渲染 指令;  a three-dimensional controller, configured to send a three-dimensional interface rendering instruction to the three-dimensional processing engine according to a user operation;
三维渲染引擎, 用于依据所述三维界面渲染指令对被操作的三维图形 执行渲染处理。  And a three-dimensional rendering engine, configured to perform a rendering process on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction.
一种三维界面显示方法, 其应用于三维界面显示装置中, 所述三维界 面显示装置包括三维界面视图模块、 三维控制器, 以及三维渲染引擎, 所 述方法包括:  A three-dimensional interface display method is applied to a three-dimensional interface display device, the three-dimensional interface display device comprising a three-dimensional interface view module, a three-dimensional controller, and a three-dimensional rendering engine, the method comprising:
三维界面视图模块检测用户对三维图形的操作并将其发送至三维控制 器;  The three-dimensional interface view module detects the user's operation on the three-dimensional graphics and sends it to the three-dimensional controller;
三维控制器依据用户的操作向三维处理引擎发送三维界面渲染指令; 三维渲染引擎依据所述三维界面渲染指令对被操作的三维图形执行渲 染处理。 The three-dimensional controller sends a three-dimensional interface rendering instruction to the three-dimensional processing engine according to the user's operation; The three-dimensional rendering engine performs a rendering process on the operated three-dimensional graphics in accordance with the three-dimensional interface rendering instructions.
优选地, 所述三维界面视图模块包括图形用户界面窗口数据模块、 用 户输入检测模块, 以及屏幕交互模块, 其中,  Preferably, the three-dimensional interface view module includes a graphical user interface window data module, a user input detection module, and a screen interaction module, where
图形用户界面窗口数据模块,用于封装图形用户界面 GUI的窗口信息; 用户输入检测模块, 用于检测用户对三维图形的操作并将其发送至三 维控制器;  a graphical user interface window data module for encapsulating window information of the GUI of the graphical user interface; a user input detection module for detecting the operation of the user on the three-dimensional graphics and transmitting the same to the three-dimensional controller;
屏幕交互模块, 用于显示三维界面。  A screen interaction module for displaying a three-dimensional interface.
优选地, 所述三维渲染引擎至少包括模型坐标变换模块、 世界坐标变 换模块、 物体剔除模块、 插入渲染列表模块、 背面消除模块、 相机坐标变 换模块、 光照着色模块、 三维物体空间裁剪模块、 纹理映射模块、 透视变 换模块、 图像空间裁剪模块、 以及光栅化模块中的一种, 其中,  Preferably, the three-dimensional rendering engine includes at least a model coordinate transformation module, a world coordinate transformation module, an object culling module, an insertion rendering list module, a back surface elimination module, a camera coordinate transformation module, a light coloring module, a three-dimensional object space cropping module, and a texture mapping. a module, a perspective transformation module, an image space cropping module, and a rasterization module, wherein
模型坐标变换模块, 用于对三维图形的模型坐标进行变换;  a model coordinate transformation module, configured to transform model coordinates of the three-dimensional graphics;
世界坐标变换模块, 用于依据三维图形的位置将模型坐标变换为世界 坐标;  a world coordinate transformation module, configured to transform model coordinates into world coordinates according to the position of the three-dimensional graphics;
物体剔除模块, 用于在执行世界坐标到相机坐标变换之前, 选择并剔 除三维图形中相对相机视点而言不可见的部分;  An object culling module for selecting and rejecting portions of the three-dimensional graphics that are invisible relative to the camera viewpoint before performing world coordinate to camera coordinate transformation;
插入渲染列表模块, 用于将三维图形的可见部分的每个多边形面插入 到渲染列表中;  Inserting a render list module for inserting each polygon face of the visible portion of the three-dimensional graphic into the render list;
背面消除模块, 用于消除被遮挡的三维图形中的多边形面;  a back side elimination module for eliminating a polygon surface in the occluded three-dimensional figure;
相机坐标变换模块, 用于依据相机视点对三维图形进行变换; 三维物体空间裁剪模块, 用于依据三维视景体对三维图形中可见的部 分进行裁剪;  a camera coordinate transformation module, configured to transform a three-dimensional graphic according to a camera viewpoint; a three-dimensional object spatial cutting module, configured to cut a visible portion of the three-dimensional graphic according to the three-dimensional visual body;
光照着色模块, 用于将三维图形由线框渲染为实体, 以增强三维图形 的三维真实感; 纹理映射模块, 用于将一幅二维图像作为纹理贴到三维图形的一个多 边形面上; A lighting coloring module for rendering a three-dimensional graphic from a wireframe to a solid to enhance the three-dimensional realism of the three-dimensional graphic; a texture mapping module, configured to paste a two-dimensional image as a texture onto a polygon surface of the three-dimensional graphic;
透视变换模块, 用于将相机坐标变换为透视坐标, 以使得三维图形变 换为二维图片;  a perspective transformation module, configured to transform camera coordinates into perspective coordinates, so that the three-dimensional graphics are converted into two-dimensional images;
图像空间裁剪模块, 用于将透视坐标变换为屏幕坐标; 还用于将越过 了屏幕边界的三维图形的部分进行裁剪;  An image space cropping module for transforming perspective coordinates into screen coordinates; and for cutting a portion of the three-dimensional graphic that crosses the screen boundary;
光栅化模块, 用于渲染三维图形到显示緩沖区。  Rasterization module for rendering 3D graphics to the display buffer.
优选地, 所述三维渲染引擎依据三维界面渲染指令对被操作的三维图 形执行渲染处理包括:  Preferably, the three-dimensional rendering engine performs rendering processing on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction, including:
依据用户对三维图形的操作, 将三维图形的模型坐标值变换为世界坐 标值;  Transforming the model coordinate values of the three-dimensional graphics into world coordinate values according to the user's operation on the three-dimensional graphics;
将三维图形的每个多边形面插入到渲染列表中;  Insert each polygon face of the 3D graphic into the render list;
创建照相机变换矩阵;  Create a camera transformation matrix;
消除处于背面的多边形;  Eliminate polygons on the back side;
依据相机视点将三维图形的世界坐标值变换为相机坐标值;  Converting the world coordinate value of the three-dimensional graphic into a camera coordinate value according to the camera viewpoint;
根据三维视景体对只能看到一部分的三维图形进行裁剪;  According to the three-dimensional view body, the three-dimensional graphics that can only be seen part of the cropping are cut;
对渲染列表执行深度排序;  Perform depth sorting on the render list;
将三维图形的相机坐标值变换为屏幕坐标值, 将三维图形由线框渲染 为实体;  Converting the camera coordinate values of the three-dimensional graphics into screen coordinate values, and rendering the three-dimensional graphics from the wireframe to an entity;
绘制渲染场景, 并将渲染后的三维图形保存到显存中。  Draw the rendered scene and save the rendered 3D graphics to the video memory.
通过上述本发明的技术方案可以看出, 本发明的有益效果是, 对于没 有三维图形硬件加速的终端(例如手机), 也可以使用该本发明提供的三维 界面显示装置、 方法去获得真实感较强的三维界面, 从而为用户提供更好 的交互体险。 附图说明 It can be seen that the above-mentioned technical solution of the present invention has the beneficial effects that the terminal (such as a mobile phone) without hardware acceleration of the three-dimensional graphics can also use the three-dimensional interface display device and method provided by the present invention to obtain realism. A strong three-dimensional interface provides users with better interaction risks. DRAWINGS
此处所说明的附图用来提供对本发明的进一步理解, 构成本发明的一 部分, 本发明的示意性实施例及其说明用于解释本发明, 并不构成对本发 明的不当限定。 在附图中:  The drawings are intended to provide a further understanding of the present invention, and are intended to be a part of the invention. In the drawing:
图 1是本发明实施例提供的三维界面显示装置结构示意图;  1 is a schematic structural diagram of a three-dimensional interface display device according to an embodiment of the present invention;
图 2是本发明实施例提供的三维界面显示方法流程示意图;  2 is a schematic flowchart of a method for displaying a three-dimensional interface according to an embodiment of the present invention;
图 3是本发明实施例提供的制作三维图形 (三维立方体) 的流程图; 图 4是本发明实施例提供的制作三维图形 (三维立方体)每个平面的 流程图;  3 is a flow chart of making a three-dimensional graphic (three-dimensional cube) according to an embodiment of the present invention; FIG. 4 is a flow chart of each plane for creating a three-dimensional graphic (three-dimensional cube) according to an embodiment of the present invention;
图 5是本发明实施例提供的绘制三维界面的流程图。 具体实施方式  FIG. 5 is a flowchart of drawing a three-dimensional interface according to an embodiment of the present invention. detailed description
为了使本发明所要解决的技术问题、 技术方案及有益效果更加清楚、 明白, 以下结合附图和实施例, 对本发明进行进一步详细说明。 应当理解, 此处所描述的具体实施例仅仅用以解释本发明, 并不用于限定本发明。  The present invention will be further described in detail below with reference to the accompanying drawings and embodiments in order to make the present invention. It is understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
如图 1 所示, 本发明实施例提供了一种三维界面显示装置, 包括三维 界面视图模块 10、 三维控制器 20, 以及三维渲染引擎 30, 其中,  As shown in FIG. 1 , an embodiment of the present invention provides a three-dimensional interface display device, including a three-dimensional interface view module 10, a three-dimensional controller 20, and a three-dimensional rendering engine 30, wherein
三维界面视图模块 10, 用于检测用户对三维图形的操作并将其发送至 三维控制器 20;  The three-dimensional interface view module 10 is configured to detect a user's operation on the three-dimensional graphic and send it to the three-dimensional controller 20;
三维控制器 20, 用于依据用户的操作向三维处理引擎发送三维界面渲 染指令;  a three-dimensional controller 20, configured to send a three-dimensional interface rendering instruction to the three-dimensional processing engine according to a user operation;
三维渲染引擎 30, 用于依据所述三维界面渲染指令对被操作的三维图 形执行渲染处理。  The three-dimensional rendering engine 30 is configured to perform a rendering process on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction.
具体实施时,本发明实施例提供的三维界面显示装置采用 MVC模式进 行设计, 将三维渲染引擎 30、 三维界面视图模块 10、 三维控制器 20进行 分离及解耦, 使三维界面的设计和开发有了很大的灵活性。 其中, 所述三维界面视图模块 10用于解决可移植性问题, 因为本发明 实施例提供的三维界面显示装置是需要独立于手机图形用户界面 GUI的, 这样可以减少不同终端 (例如手机, 本发明实施例将主要以手机为例进行 说明)上三维界面的开发成本。 所以, 提供三维界面视图模块 10将手机图 形用户界面 GUI封装, 以致在将三维界面显示装置移植到新的手机时, 需 要做的仅仅是在新的手机上对三维界面视图模块 10进行修改, 而其它部分 不变。 例如, 在不同的手机上, 显示的三维界面是相同的, 不同的是仅仅 修改其三维界面视图模块 10。 In a specific implementation, the three-dimensional interface display device provided by the embodiment of the present invention is designed by using the MVC mode, and the three-dimensional rendering engine 30, the three-dimensional interface view module 10, and the three-dimensional controller 20 are separated and decoupled, so that the design and development of the three-dimensional interface are A lot of flexibility. The three-dimensional interface view module 10 is used to solve the portability problem, because the three-dimensional interface display device provided by the embodiment of the present invention needs to be independent of the mobile phone graphical user interface GUI, so that different terminals (such as mobile phones, the present invention can be reduced. The embodiment will mainly explain the development cost of the three-dimensional interface by taking a mobile phone as an example. Therefore, the three-dimensional interface view module 10 is provided to encapsulate the mobile phone graphical user interface GUI, so that when the three-dimensional interface display device is transplanted to the new mobile phone, all that is required is to modify the three-dimensional interface view module 10 on the new mobile phone. The rest is unchanged. For example, on different mobile phones, the displayed three-dimensional interface is the same, except that only its three-dimensional interface view module 10 is modified.
三维界面视图模块 10还用来和用户交互。 具体来说, 它封装了手机图 形用户界面 GUI的窗口, 并具备用户输入一级屏幕输出功能, 用以传递用 户输入给三维控制器 20。  The 3D interface view module 10 is also used to interact with the user. Specifically, it encapsulates a window of the mobile phone graphical user interface GUI and has a user input level one screen output function for transmitting user input to the three dimensional controller 20.
具体地, 继续参照图 1 , 所述三维界面视图模块 10包括图形用户界面 窗口数据模块 101、 用户输入检测模块 102, 以及屏幕交互模块 103, 其中, 图形用户界面窗口数据模块 101 , 用于封装图形用户界面 GUI的窗口 信息;  Specifically, with reference to FIG. 1 , the three-dimensional interface view module 10 includes a graphical user interface window data module 101 , a user input detection module 102 , and a screen interaction module 103 , wherein the graphical user interface window data module 101 is configured to encapsulate graphics. Window information of the user interface GUI;
用户输入检测模块 102,用于检测用户对三维图形的操作并将其发送至 三维控制器 20;  The user input detection module 102 is configured to detect a user's operation on the three-dimensional graphic and send it to the three-dimensional controller 20;
屏幕交互模块 103 , 用于显示三维界面。  The screen interaction module 103 is configured to display a three-dimensional interface.
所述三维控制器 20用于解决可扩展性问题, 这是因为对于各种三维界 面, 它们的用户体验是不同的, 但三维图形渲染是一致的, 用户交互方式 也是一致的。 所以, 在实际的实施过程中, 各种不同的三维界面可以拥有 各自的三维控制器 20, 而对于三维图形的渲染处理则统一由三维处理引擎 处理, 对于人机交互则统一由三维界面视图模块 10处理。  The three-dimensional controller 20 is used to solve the scalability problem because their user experience is different for various three-dimensional interfaces, but the three-dimensional graphics rendering is consistent and the user interaction is also consistent. Therefore, in the actual implementation process, various three-dimensional interfaces may have their own three-dimensional controller 20, and the rendering processing for the three-dimensional graphics is uniformly processed by the three-dimensional processing engine, and the human-computer interaction is unified by the three-dimensional interface view module. 10 processing.
在实际应用中, 允许三维界面更换三维控制器 20, 而且可以根据用户 需要动态地打开或关闭相对应的三维控制器 20, 甚至在运行期间可以进行 三维控制器 20的替换。 例如, 手机运行时, 可以使得三维界面在各种风格 之间进行切换。 In practical applications, the three-dimensional interface is allowed to replace the three-dimensional controller 20, and the corresponding three-dimensional controller 20 can be dynamically turned on or off according to user needs, even during operation. Replacement of the three-dimensional controller 20. For example, when the phone is running, the 3D interface can be switched between various styles.
三维控制器 20的功能是用来取得用户输入并解读, 例如解读用户对三 维图形的操作, 以获取用户对三维界面的操作用意。 具体来说, 它依据用 户对于三维图形的操作, 改变三维界面的视觉效果。  The function of the three-dimensional controller 20 is to obtain user input and interpret, for example, to interpret the user's operation on the three-dimensional graphics to obtain the user's operational intentions for the three-dimensional interface. Specifically, it changes the visual effect of the 3D interface based on the user's operation on the 3D graphics.
另外, 三维渲染引擎 30用于解决高性能问题, 因为三维界面显示装置 的处理速度性能必须非常快, 才能在没有硬件加速的情况下, 进行流畅地 三维界面显示。 所以, 将性能消耗最多和代码量最多的三维渲染引擎 30独 立出来, 专门用于高性能三维渲染。 而且,在优化三维渲染引擎 30性能时, 不用修改各种手机上的三维界面。  In addition, the 3D rendering engine 30 is used to solve high performance problems because the processing speed of the 3D interface display device must be very fast in order to perform a smooth 3D interface display without hardware acceleration. Therefore, the 3D rendering engine 30, which consumes the most performance and has the most code, is independent, and is designed for high-performance 3D rendering. Moreover, when optimizing the performance of the 3D rendering engine 30, it is not necessary to modify the 3D interface on various mobile phones.
三维渲染引擎 30的功能是用来渲染三维图形的, 它持有所有三维图形 的数据、状态和程序逻辑。 具体来说, 它负责处理三维图形的数据结构(包 括所有的光源、 运动和常规状态信息) 以及从用户或相机所在的视点渲染 三维图形。  The function of the 3D rendering engine 30 is to render 3D graphics, which holds the data, state and program logic of all 3D graphics. Specifically, it handles the data structure of the 3D graphics (including all light sources, motion, and general state information) and renders 3D graphics from the point of view of the user or camera.
继续参照图 1 , 所述三维渲染引擎 30至少包括模型坐标变换模块 301、 世界坐标变换模块 302、 物体剔除模块 303、 插入渲染列表模块 304、 背面 消除模块 305、 相机坐标变换模块 306、 光照着色模块 307、 三维物体空间 裁剪模块 308、 纹理映射模块 309、 透视变换模块 310、 图像空间裁剪模块 311、 以及光栅化模块 312中的一种, 其中,  With continued reference to FIG. 1 , the three-dimensional rendering engine 30 includes at least a model coordinate transformation module 301 , a world coordinate transformation module 302 , an object culling module 303 , an insertion rendering list module 304 , a back surface elimination module 305 , a camera coordinate transformation module 306 , and a light coloring module . 307. One of a three-dimensional object space clipping module 308, a texture mapping module 309, a perspective transformation module 310, an image space clipping module 311, and a rasterization module 312, where
模型坐标变换模块 301 , 用于对三维图形的模型坐标进行变换。对三维 图形的模型坐标进行变换。 例如在原地执行旋转、 缩放或其他顶点操作, 即修改模型坐标。  The model coordinate transformation module 301 is configured to transform model coordinates of the three-dimensional graphics. Transform the model coordinates of the 3D graphics. For example, performing rotation, scaling, or other vertex operations in place, that is, modifying model coordinates.
世界坐标变换模块 302,用于依据三维图形的位置将模型坐标变换为世 界坐标;  The world coordinate transformation module 302 is configured to transform the model coordinates into world coordinates according to the position of the three-dimensional graphics;
物体剔除模块 303 , 用于在执行世界坐标到相机坐标变换之前, 选择并 剔除三维图形中相对相机视点而言不可见的部分。 在执行世界坐标到相机 坐标变换之前, 需要判断哪些三维图形相对相机视点而言是可见的, 以免 错误地渲染它们。 An object culling module 303, configured to select and before performing world coordinate to camera coordinate transformation Exclude parts of the 3D graphics that are invisible relative to the camera viewpoint. Before performing world coordinate to camera coordinate transformation, it is necessary to determine which three-dimensional graphics are visible relative to the camera viewpoint so as not to render them erroneously.
插入渲染列表模块 304,用于将三维图形的可见部分的每个多边形面插 入到渲染列表中。 渲染列表是一个指针数组, 其中每个指针指向一个自包 含的、 可渲染的多边形面。 可见三维图形的每个多边形面都会插入到渲染 列表中。  An insert list module 304 is inserted for inserting each polygon face of the visible portion of the three-dimensional graphic into the render list. A render list is an array of pointers, each of which points to a self-contained, renderable polygon face. Each polygon face of the visible 3D graphic is inserted into the render list.
背面消除模块 305 , 用于消除被遮挡的三维图形中的多边形面; 相机坐标变换模块 306, 用于依据相机视点对三维图形进行变换; 三维物体空间裁剪模块 308,用于依据三维视景体对三维图形中可见的 部分进行裁剪;  The back surface elimination module 305 is configured to eliminate the polygon surface in the occluded three-dimensional graphics; the camera coordinate transformation module 306 is configured to transform the three-dimensional graphics according to the camera viewpoint; and the three-dimensional object space clipping module 308 is configured to perform the three-dimensional object alignment The visible part of the 3D graphics is cropped;
光照着色模块 307, 用于将三维图形由线框渲染为实体, 以增强三维图 形的三维真实感;  The illumination shading module 307 is configured to render the three-dimensional graphics from the wireframe into a solid to enhance the three-dimensional realism of the three-dimensional graphics;
纹理映射模块 309,用于将一幅二维图像作为纹理贴到三维图形的一个 多边形面上;  a texture mapping module 309, configured to paste a two-dimensional image as a texture onto a polygon surface of the three-dimensional graphic;
透视变换模块 310, 用于将相机坐标变换为透视坐标, 以使得三维图形 变换为二维图片;  a perspective transformation module 310, configured to transform camera coordinates into perspective coordinates, so that the three-dimensional graphics are transformed into a two-dimensional image;
图像空间裁剪模块 311 , 用于将透视坐标变换为屏幕坐标; 还用于将越 过了屏幕边界的三维图形的部分进行裁剪;  An image space cropping module 311 is configured to transform perspective coordinates into screen coordinates; and is also used for cutting a portion of the three-dimensional graphics that crosses the screen boundary;
光栅化模块 312, 用于渲染三维图形到显示緩沖区。  A rasterization module 312 is configured to render the three-dimensional graphics to the display buffer.
其中, 所述三维渲染引擎 30依据三维界面渲染指令对被操作的三维图 形执行渲染处理的步驟包括:  The step of performing the rendering process on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction by the three-dimensional rendering engine 30 includes:
( 1 )依据用户对三维图形的操作, 将三维图形的模型坐标值变换为世 界坐标值;  (1) converting the model coordinate values of the three-dimensional graphics into world coordinate values according to the user's operation on the three-dimensional graphics;
( 2 )将三维图形的每个多边形面插入到渲染列表中; ( 3 )创建照相机变换矩阵; (2) inserting each polygon face of the three-dimensional graphic into the rendering list; (3) creating a camera transformation matrix;
( 4 ) 消除处于背面的多边形;  (4) Eliminate the polygon on the back side;
( 5 )依据相机视点将三维图形的世界坐标值变换为相机坐标值; ( 6 )根据三维视景体对只能看到一部分的三维图形进行裁剪; ( 7 )对渲染列表执行深度排序;  (5) converting the world coordinate value of the three-dimensional graphic into the camera coordinate value according to the camera viewpoint; (6) cutting the three-dimensional graphic that can only see a part according to the three-dimensional visual field; (7) performing depth sorting on the rendering list;
( 8 )将三维图形的相机坐标值变换为屏幕坐标值, 将三维图形由线框 渲染为实体;  (8) transforming the camera coordinate values of the three-dimensional graphics into screen coordinate values, and rendering the three-dimensional graphics from the wireframe into an entity;
( 9 )绘制渲染场景, 并将渲染后的三维图形保存到显存中。  (9) Draw the rendered scene and save the rendered 3D graphics to the video memory.
更为具体地,请参考图 5 , 其为本发明实施例提供的绘制三维界面的流 程图, 所述绘制流程包括如下步驟:  For more details, please refer to FIG. 5 , which is a flowchart of drawing a three-dimensional interface according to an embodiment of the present invention, where the drawing process includes the following steps:
步驟 S401、 变换模型坐标。 对三维立方体执行翻转、 缩放或其他顶点 操作, 修改了三维立方体的模型坐标值。 根据三维图形的位置将模型坐标 变换为世界坐标。  Step S401: Transform model coordinates. Performs flip, scale, or other vertex operations on the 3D cube, modifying the model coordinate values of the 3D cube. The model coordinates are transformed into world coordinates based on the position of the 3D graphics.
步驟 S402、 将物体插入到渲染列表中。 为了更快地绘制, 将每个物体 中的多边形提取出来, 统一地保存在渲染列表中。 渲染列表是一个指针数 组, 其中每个指针指向一个自包含的、 可渲染的多边形面, 可见三维图形 的每个多边形面都会插入到渲染列表中。  Step S402: Insert an object into the rendering list. To draw faster, the polygons in each object are extracted and stored uniformly in the render list. A render list is a set of pointers, each of which points to a self-contained, renderable polygon face, and each polygon face of the visible 3D graph is inserted into the render list.
步驟 S403、 创建照相机变换矩阵。 用于下面步驟中的矩阵运算。  Step S403: Create a camera transformation matrix. Used for matrix operations in the following steps.
步驟 S404、 消除处于背面的多边形。 执行世界坐标到相机坐标变换之 前, 需要判断哪些三维图形对相机而言是可见的, 以免错误地渲染它们。 人眼看不到的背面是不用绘制的, 通过使用照相机变换矩阵, 消除渲染列 表中处于背面的多边形。  Step S404, eliminating the polygon on the back side. Before performing world coordinates to camera coordinate transformation, you need to determine which 3D graphics are visible to the camera so that they are not rendered incorrectly. The back that is invisible to the human eye is not drawn. By using the camera transformation matrix, the polygons on the back side of the rendered list are eliminated.
步驟 S405、 变换世界坐标到相机坐标。 根据相机位置和视角对可能的 可见三维图形进行变换。  Step S405: Transform the world coordinates to the camera coordinates. The possible visible three-dimensional graphics are transformed according to the camera position and viewing angle.
步驟 S406、 对多边形进行三维裁剪。 根据三维视景体对只能看到一部 分的三维图形进行裁剪。 Step S406, performing three-dimensional cropping on the polygon. Only one can be seen according to the 3D view Divided into three-dimensional graphics.
步驟 S407、 对渲染列表执行深度排序。 用于加速渲染列表中多边形的 绘制。  Step S407: Perform depth sorting on the rendering list. Used to speed up the rendering of polygons in the render list.
步驟 S408、 变换相机坐标到屏幕坐标。将三维图形由线框渲染为实体, 来增强三维图形的三维真实感。 使用一幅二维图像作为纹理贴到三维图形 的一个多边形面上。 将相机坐标变换为透视坐标, 三维图形变换为二维图 像。 将透视坐标变换为屏幕坐标, 有些多边形图像可能越过了屏幕边界, 需要对其裁剪。  Step S408: Convert camera coordinates to screen coordinates. Renders 3D graphics from solids to wireframes to enhance the 3D realism of 3D graphics. Use a 2D image as a texture attached to a polygon face of a 3D graphic. Convert camera coordinates to perspective coordinates and transform 3D graphics into 2D images. Transform perspective coordinates into screen coordinates, and some polygon images may cross the screen boundary and need to be cropped.
步驟 S409、 绘制渲染场景。 渲染三维图形的最终图像到手机屏幕的显 存中。 例如, 三维立方体是以不透明方式绘制, 三维立方体镜像是以半透 明的方式绘制, 所述三维立方体镜像模拟了所述三维立方体的倒影, 其翻 转方向就像倒影一样, 和三维立方体的翻转方向相反。  Step S409, drawing a rendered scene. Render the final image of the 3D graphic into the memory of the phone screen. For example, a three-dimensional cube is drawn in an opaque manner, and a three-dimensional cube image is drawn in a translucent manner, the three-dimensional cube mirroring simulates the reflection of the three-dimensional cube, the flip direction is like a reflection, and the reverse direction of the three-dimensional cube is reversed. .
步驟 S410、 完成三维立方体的绘制。  Step S410, completing drawing of the three-dimensional cube.
相应地, 本发明实施例还提供了一种终端, 其包括如上所述的三维界 面显示装置, 继续参照图 1 , 所述装置包括三维界面视图模块 10、 三维控 制器 20, 以及三维渲染引擎 30, 其中,  Correspondingly, the embodiment of the present invention further provides a terminal, which includes the three-dimensional interface display device as described above. With continued reference to FIG. 1, the device includes a three-dimensional interface view module 10, a three-dimensional controller 20, and a three-dimensional rendering engine 30. , among them,
三维界面视图模块 10, 用于检测用户对三维图形的操作并将其发送至 三维控制器 20;  The three-dimensional interface view module 10 is configured to detect a user's operation on the three-dimensional graphic and send it to the three-dimensional controller 20;
三维控制器 20, 用于依据用户的操作向三维处理引擎发送三维界面渲 染指令;  a three-dimensional controller 20, configured to send a three-dimensional interface rendering instruction to the three-dimensional processing engine according to a user operation;
三维渲染引擎 30, 用于依据所述三维界面渲染指令对被操作的三维图 形执行渲染处理。  The three-dimensional rendering engine 30 is configured to perform a rendering process on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction.
本发明实施例提供的终端, 由于其包含如上文所述的三维界面显示装 置, 且由于上文对该三维界面显示装置进行了详细的描述, 这里将不再对 其进行重复赞述。 如图 2所示, 本发明实施例还提供了一种三维界面显示方法, 其三维 界面显示装置包括三维界面视图模块 10、 三维控制器 20, 以及三维渲染引 擎 30, 所述方法包括: The terminal provided by the embodiment of the present invention, since it includes the three-dimensional interface display device as described above, and since the above-described three-dimensional interface display device is described in detail, it will not be repeated here. As shown in FIG. 2, an embodiment of the present invention further provides a three-dimensional interface display device, where the three-dimensional interface display device includes a three-dimensional interface view module 10, a three-dimensional controller 20, and a three-dimensional rendering engine 30, and the method includes:
5101、三维界面视图模块 10检测用户对三维图形的操作并将其发送至 三维控制器 20;  5101, the three-dimensional interface view module 10 detects the user's operation on the three-dimensional graphics and sends it to the three-dimensional controller 20;
5102、三维控制器 20依据用户的操作向三维处理引擎发送三维界面渲 染指令;  5102. The three-dimensional controller 20 sends a three-dimensional interface rendering instruction to the three-dimensional processing engine according to a user operation;
5103、三维渲染引擎 30依据所述三维界面渲染指令对被操作的三维图 形执行渲染处理。  5103. The three-dimensional rendering engine 30 performs a rendering process on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction.
对于所述三维界面显示装置详细说明, 请参考上文所述, 这里不再重 复说明。  For a detailed description of the three-dimensional interface display device, please refer to the above, and the description will not be repeated here.
如图 3 所示, 其为本发明实施例制作三维立方体的流程示意图, 所述 流程包括:  As shown in FIG. 3, it is a schematic flowchart of a method for manufacturing a three-dimensional cube according to an embodiment of the present invention, where the process includes:
步驟 S201、 设置绘制区域。 确定三维立方体在手机屏幕中的位置, 三 维立方体位于绘制区域之内的部分会被绘制出来, 位于绘制区域之外的部 分会被裁剪掉, 而不会被绘制。  Step S201: Setting a drawing area. Determine the position of the 3D cube on the screen of the phone. The part of the 3D cube that is inside the drawing area will be drawn, and the part outside the drawing area will be cropped and will not be drawn.
步驟 S202、 设置有效区域。 对于触摸屏手机, 用户的触摸位置位于有 效区域之内时, 三维立方体才会做出交互反应。 例如, 用户的手指在有效 区域移动时, 三维立方体会向手指移动方向翻转, 用户的手指在有效区域 之外移动时, 三维立方体不会翻转。  Step S202: Set an effective area. For touch screen phones, the 3D cube will react interactively when the user's touch location is within the active area. For example, when the user's finger moves in the active area, the 3D cube will flip in the direction of the finger movement, and the 3D cube will not flip when the user's finger moves outside the effective area.
步驟 S203、 新建帧緩沖区。 本发明三维界面引擎使用双緩沖机制, 在 手机屏幕中, 被逐行扫描出来的是帧緩沖区中完整的三维界面, 而不是绘 制三维界面的过程。  Step S203: Create a new frame buffer. The three-dimensional interface engine of the present invention uses a double buffering mechanism. In the mobile phone screen, the entire three-dimensional interface in the frame buffer is scanned line by line, rather than the process of drawing a three-dimensional interface.
步驟 S204、 判断是最后一个面。 循环处理三维立方体的六个平面。 步驟 S205、 新建三维立方体的平面。 制作三维立方体的每个平面, 具 体步驟见下文关于图 4的描述。 In step S204, the judgment is the last face. Loop through the six planes of the 3D cube. Step S205, creating a plane of the three-dimensional cube. Make each plane of the 3D cube, with The body steps are described below with respect to Figure 4.
步驟 S206、 新建绘制区域背景。 该图像作为三维立方体的背景。  Step S206: Create a new drawing area background. This image acts as the background for the 3D cube.
步驟 S207、 新建照相机。 模拟了人的眼睛, 在三维空间中, 人通过眼 睛观察三维物体, 离自己近的物体看上去大, 而离自己远的物体看上去小, 这会产生真实的空间感。  Step S207, creating a new camera. The human eye is simulated. In the three-dimensional space, a person observes a three-dimensional object through an eye, and an object that is close to himself looks large, and an object that is far away from himself looks small, which gives a real sense of space.
步驟 S208、 新建深度緩存。 在三维空间中, 离自己近的物体会挡住离 自己远的物体, 深度緩存保存了物体的远近位置。 二维空间使用 X、 Y 两 个坐标轴, 三维空间使用 X、 Υ、 Ζ三个坐标轴, 深度緩存中的值代表了 Ζ 坐标轴上的值。  Step S208: Create a new depth cache. In three-dimensional space, objects close to you will block objects far away from you, and the depth buffer preserves the near and far position of the object. The two-dimensional space uses two axes, X and Y. The three-dimensional space uses three axes: X, Υ, and ,. The value in the depth buffer represents the value on the Ζ axis.
步驟 S209、 新建渲染场景。 这是绘制三维物体时的上下文, 渲染场景 包括渲染列表、 深度緩存、 屏幕显存、 透明度的具体数据, 它决定三维物 体以何种方式绘制出来。  Step S209, creating a new rendering scene. This is the context in which the 3D object is rendered. The rendered scene includes specific data for the render list, depth buffer, screen memory, and transparency, which determines how the 3D object is drawn.
步驟 S210、 新建半透明表。 半透明的三维立方体镜像 102是三维立方 体 101的倒影, 绘制镜像时要用到该半透明表。  Step S210: Create a new translucent table. The translucent three-dimensional cube image 102 is the reflection of the three-dimensional cube 101, which is used when drawing the image.
步驟 S211、 完成三维立方体的制作。  Step S211, completing the production of the three-dimensional cube.
如图 4所示, 其为本发明实施例提供的制作三维立方体每个平面的流 程示意图。它详细描述了上述步驟 S205的具体实现内容,其实现步驟如下: 步驟 S301、 设置三维立方体面标示。 三维立方体有六个面, 位于上下 左右前后, 其数值是各不相同的, 通过标示决定赋予该面何种数值。  As shown in FIG. 4, it is a schematic diagram of a process for manufacturing each plane of a three-dimensional cube according to an embodiment of the present invention. It describes in detail the specific implementation content of the above step S205, and the implementation steps are as follows: Step S301: Set a three-dimensional cube surface label. The three-dimensional cube has six faces, which are located between the top and bottom, and the values are different. It is determined by the label to determine what value to give the face.
步驟 S302、 新建顶点列表。 该列表保存了三维立方体面每个顶点的位 置, 使用的是模型坐标, 所有多边形是由顶点构成的。  Step S302: Create a new vertex list. This list holds the position of each vertex of the 3D cube face, using model coordinates, all polygons are made up of vertices.
步驟 S303、 新建纹理坐标列表。 该列表保存了要贴在该面上, 纹理的 坐标位置, 通过这些坐标位置对图像进行采样, 然后构成了纹理的像素数 据。  Step S303: Create a new texture coordinate list. The list holds the coordinate positions of the texture to be attached to the face, and the image is sampled by these coordinate positions, which then form the pixel data of the texture.
步驟 S304、 新建顶点纹理映射表。 该列表建立了顶点与纹理坐标—— 对应的关系, 决定了该顶点使用纹理中哪个具体的像素数据。 Step S304, creating a new vertex texture mapping table. This list establishes vertex and texture coordinates - The corresponding relationship determines which specific pixel data in the texture is used by the vertex.
步驟 S305、 新建多边形列表。 该列表保存了多边形数据, 这里的多边 形都是三角形, 使用三角形的好处是三角形的每个顶点都是共面的, 而且 三角形结构简单, 易于三维图形算法快速绘制。 三角形是三维图形渲染流 水线绘制的基本图元, 所有三维物体是由三角形构成的。  Step S305, creating a new polygon list. The list holds polygon data, where the polygons are all triangles. The advantage of using triangles is that each vertex of the triangle is coplanar, and the triangle structure is simple, making it easy to draw three-dimensional graphics algorithms quickly. A triangle is the basic primitive for a 3D graphics rendering pipeline. All 3D objects are made up of triangles.
步驟 S306、 设置物体位置。 确定三维物体在三维空间中的位置, 即它 在世界坐标系中的位置。  Step S306, setting an object position. Determine the position of a three-dimensional object in three-dimensional space, that is, its position in the world coordinate system.
步驟 S307、 设置物体坐标轴。 为了准确翻转, 三维物体有用于记录朝 向的模型坐标轴, 使用世界坐标。 这样沿 X、 Υ、 Ζ三个坐标轴翻转时, 才 能知道三维物体的朝向。  Step S307: Set an object coordinate axis. In order to accurately flip, the 3D object has a model coordinate axis for recording the orientation, using world coordinates. When you flip through the three axes of X, Υ, and 这样, you can know the orientation of the three-dimensional object.
步驟 S308、 使物体大小匹配绘制区域。 三维立方体会自动匹配绘制区 域的大小, 使它自己能被完整地被绘制出来。  Step S308: Match the object size to the drawing area. The 3D cube automatically matches the size of the drawing area so that it can be drawn completely.
步驟 S309、 新建纹理。 每个三维立方体面都会填一张图像, 使用纹理 对图像缩放采样, 已匹配三维立方体面的大小。  Step S309, creating a new texture. Each 3D cube face is filled with an image, and the texture is used to scale the image and match the size of the 3D cube face.
步驟 S310、 设置所有列表的值。 顶点列表、 纹理坐标列表、 多边形列 表会填上准确的数值, 这些数值在绘制流程中使用。  Step S310, setting values of all the lists. Vertex lists, texture coordinate lists, and polygon lists are filled with exact values that are used in the drawing process.
步驟 S311、 完成三维立方体面的制作。  Step S311, completing the production of the three-dimensional cube surface.
在本发明实施例中, 所述三维渲染引擎 30依据三维界面渲染指令对被 操作的三维图形执行渲染处理的步驟包括:  In the embodiment of the present invention, the step of the three-dimensional rendering engine 30 performing rendering processing on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction includes:
( 1 )依据用户对三维图形的操作, 将三维图形的模型坐标值变换为世 界坐标值;  (1) converting the model coordinate values of the three-dimensional graphics into world coordinate values according to the user's operation on the three-dimensional graphics;
( 2 )将三维图形的每个多边形面插入到渲染列表中;  (2) inserting each polygon face of the three-dimensional graphic into the rendering list;
( 3 )创建照相机变换矩阵;  (3) creating a camera transformation matrix;
( 4 ) 消除处于背面的多边形;  (4) Eliminate the polygon on the back side;
( 5 )依据相机视点将三维图形的世界坐标值变换为相机坐标值; ( 6 )根据三维视景体对只能看到一部分的三维图形进行裁剪;(5) converting the world coordinate value of the three-dimensional graphic into a camera coordinate value according to the camera viewpoint; (6) cutting a three-dimensional figure that can only see a part according to the three-dimensional view body;
( 7 )对渲染列表执行深度排序; (7) performing depth sorting on the render list;
( 8 )将三维图形的相机坐标值变换为屏幕坐标值, 将三维图形由线框 渲染为实体;  (8) transforming the camera coordinate values of the three-dimensional graphics into screen coordinate values, and rendering the three-dimensional graphics from the wireframe into an entity;
( 9 )绘制渲染场景, 并将渲染后的三维图形保存到显存中。  (9) Draw the rendered scene and save the rendered 3D graphics to the video memory.
更为具体地,请参考图 5 , 其为本发明实施例提供的绘制三维界面的流 程图, 所述绘制流程包括如下步驟:  For more details, please refer to FIG. 5 , which is a flowchart of drawing a three-dimensional interface according to an embodiment of the present invention, where the drawing process includes the following steps:
步驟 S401、 变换模型坐标。 对三维立方体执行翻转、 缩放或其他顶点 操作, 修改了三维立方体的模型坐标值。 根据三维图形的位置将模型坐标 变换为世界坐标。  Step S401: Transform model coordinates. Performs flip, scale, or other vertex operations on the 3D cube, modifying the model coordinate values of the 3D cube. The model coordinates are transformed into world coordinates based on the position of the 3D graphics.
步驟 S402、 将物体插入到渲染列表中。 为了更快地绘制, 将每个物体 中的多边形提取出来, 统一地保存在渲染列表中。 渲染列表是一个指针数 组, 其中每个指针指向一个自包含的、 可渲染的多边形面, 可见三维图形 的每个多边形面都会插入到渲染列表中。  Step S402: Insert an object into the rendering list. To draw faster, the polygons in each object are extracted and stored uniformly in the render list. A render list is a set of pointers, each of which points to a self-contained, renderable polygon face, and each polygon face of the visible 3D graph is inserted into the render list.
步驟 S403、 创建照相机变换矩阵。 用于下面步驟中的矩阵运算。  Step S403: Create a camera transformation matrix. Used for matrix operations in the following steps.
步驟 S404、 消除处于背面的多边形。 执行世界坐标到相机坐标变换之 前, 需要判断哪些三维图形对相机而言是可见的, 以免错误地渲染它们。 人眼看不到的背面是不用绘制的, 通过使用照相机变换矩阵, 消除渲染列 表中处于背面的多边形。  Step S404, eliminating the polygon on the back side. Before performing world coordinates to camera coordinate transformation, you need to determine which 3D graphics are visible to the camera so that they are not rendered incorrectly. The back that is invisible to the human eye is not drawn. By using the camera transformation matrix, the polygons on the back side of the rendered list are eliminated.
步驟 S405、 变换世界坐标到相机坐标。 根据相机位置和视角对可能的 可见三维图形进行变换。  Step S405: Transform the world coordinates to the camera coordinates. The possible visible three-dimensional graphics are transformed according to the camera position and viewing angle.
步驟 S406、 对多边形进行三维裁剪。 根据三维视景体对只能看到一部 分的三维图形进行裁剪。  Step S406: Perform three-dimensional cropping on the polygon. According to the 3D view, the 3D graphics that can only be seen are cropped.
步驟 S407、 对渲染列表执行深度排序。 用于加速渲染列表中多边形的 绘制。 步驟 S408、 变换相机坐标到屏幕坐标。将三维图形由线框渲染为实体, 来增强三维图形的三维真实感。 使用一幅二维图像作为纹理贴到三维图形 的一个多边形面上。 将相机坐标变换为透视坐标, 三维图形变换为二维图 像。 将透视坐标变换为屏幕坐标, 有些多边形图像可能越过了屏幕边界, 需要对其裁剪。 Step S407, performing depth sorting on the rendering list. Used to speed up the drawing of polygons in the render list. Step S408: Convert camera coordinates to screen coordinates. Renders 3D graphics from solids to wireframes to enhance the 3D realism of 3D graphics. Use a 2D image as a texture attached to a polygon face of a 3D graphic. The camera coordinates are transformed into perspective coordinates, and the three-dimensional graphics are transformed into two-dimensional images. Transform perspective coordinates into screen coordinates, and some polygon images may cross the screen boundary and need to be cropped.
步驟 S409、 绘制渲染场景。 渲染三维图形的最终图像到手机屏幕的显 存中。 例如, 三维立方体是以不透明方式绘制, 三维立方体镜像是以半透 明的方式绘制, 所述三维立方体镜像模拟了所述三维立方体的倒影, 其翻 转方向就像倒影一样, 和三维立方体的翻转方向相反。  Step S409, drawing a rendered scene. Render the final image of the 3D graphic into the memory of the phone screen. For example, a three-dimensional cube is drawn in an opaque manner, and a three-dimensional cube image is drawn in a translucent manner, the three-dimensional cube mirroring simulates the reflection of the three-dimensional cube, the flip direction is like a reflection, and the reverse direction of the three-dimensional cube is reversed. .
步驟 S410、 完成三维立方体的绘制。  Step S410, completing drawing of the three-dimensional cube.
上述说明示出并描述了本发明的一个优选实施例, 但如前所述, 应当 理解本发明并非局限于本文所披露的形式, 不应看作是对其他实施例的排 除, 而可用于各种其他组合、 修改和环境, 并能够在本文所述发明构想范 围内, 通过上述教导或相关领域的技术或知识进行改动。 而本领域人员所 进行的改动和变化不脱离本发明的精神和范围, 则都应在本发明所附权利 要求的保护范围内。  The above description shows and describes a preferred embodiment of the present invention, but as described above, it should be understood that the present invention is not limited to the forms disclosed herein, and should not be construed as Other combinations, modifications, and environments are possible and can be modified by the teachings or related art or knowledge within the scope of the inventive concept described herein. All changes and modifications made by those skilled in the art are intended to be within the scope of the appended claims.
工业实用性  Industrial applicability
本发明中, 三维界面视图模块检测用户对三维图形的操作并将其发送 至三维控制器; 三维控制器依据用户的操作向三维处理引擎发送三维界面 渲染指令; 三维渲染引擎依据所述三维界面渲染指令对被操作的三维图形 执行渲染处理。 对于没有三维图形硬件加速的终端(例如手机), 也可以使 用该本发明提供的三维界面显示装置、 方法去获得真实感较强的三维界面, 从而为用户提供更好的交互体验。  In the present invention, the three-dimensional interface view module detects the user's operation on the three-dimensional graphics and sends it to the three-dimensional controller; the three-dimensional controller sends a three-dimensional interface rendering instruction to the three-dimensional processing engine according to the user's operation; the three-dimensional rendering engine renders according to the three-dimensional interface The instruction performs a rendering process on the operated three-dimensional graphics. For a terminal (such as a mobile phone) without hardware acceleration of the three-dimensional graphics, the three-dimensional interface display device and method provided by the present invention can also be used to obtain a three-dimensional interface with a strong realistic feeling, thereby providing a better interactive experience for the user.

Claims

1、 一种三维界面显示装置, 包括三维界面视图模块、 三维控制器, 以 及三维渲染引擎, 其中,  A three-dimensional interface display device, comprising a three-dimensional interface view module, a three-dimensional controller, and a three-dimensional rendering engine, wherein
三维界面视图模块, 用于检测用户对三维图形的操作并将其发送至三 维控制器;  a three-dimensional interface view module for detecting a user's operation on the three-dimensional graphic and transmitting it to the three-dimensional controller;
三维控制器, 用于依据用户的操作向三维处理引擎发送三维界面渲染 指令;  a three-dimensional controller, configured to send a three-dimensional interface rendering instruction to the three-dimensional processing engine according to a user operation;
三维渲染引擎, 用于依据所述三维界面渲染指令对被操作的三维图形 执行渲染处理。  And a three-dimensional rendering engine, configured to perform a rendering process on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction.
2、 根据权利要求 1所述的三维界面显示装置, 其特征在于, 所述三维 界面视图模块包括图形用户界面窗口数据模块、 用户输入检测模块, 以及 屏幕交互模块, 其中,  The three-dimensional interface display device according to claim 1, wherein the three-dimensional interface view module comprises a graphical user interface window data module, a user input detection module, and a screen interaction module, wherein
图形用户界面窗口数据模块,用于封装图形用户界面 GUI的窗口信息; 用户输入检测模块, 用于检测用户对三维图形的操作并将其发送至三 维控制器;  a graphical user interface window data module for encapsulating window information of the GUI of the graphical user interface; a user input detection module for detecting the operation of the user on the three-dimensional graphics and transmitting the same to the three-dimensional controller;
屏幕交互模块, 用于显示三维界面。  A screen interaction module for displaying a three-dimensional interface.
3、 根据权利要求 1所述的三维界面显示装置, 其特征在于, 所述三维 渲染引擎至少包括模型坐标变换模块、 世界坐标变换模块、 物体剔除模块、 插入渲染列表模块、 背面消除模块、 相机坐标变换模块、 光照着色模块、 三维物体空间裁剪模块、 纹理映射模块、 透视变换模块、 图像空间裁剪模 块、 以及光栅化模块中的一种, 其中,  The three-dimensional interface display device according to claim 1, wherein the three-dimensional rendering engine comprises at least a model coordinate transformation module, a world coordinate transformation module, an object rejection module, an insertion rendering list module, a back surface elimination module, and camera coordinates. a transform module, a light shading module, a three-dimensional object space cropping module, a texture mapping module, a perspective transformation module, an image space cropping module, and a rasterization module, wherein
模型坐标变换模块, 用于对三维图形的模型坐标进行变换;  a model coordinate transformation module, configured to transform model coordinates of the three-dimensional graphics;
世界坐标变换模块, 用于依据三维图形的位置将模型坐标变换为世界 坐标;  a world coordinate transformation module, configured to transform model coordinates into world coordinates according to the position of the three-dimensional graphics;
物体剔除模块, 用于在执行世界坐标到相机坐标变换之前, 选择并剔 除三维图形中相对相机视点而言不可见的部分; Object culling module for selecting and ticking before performing world coordinate to camera coordinate transformation Except for parts of the 3D graphics that are not visible relative to the camera viewpoint;
插入渲染列表模块, 用于将三维图形的可见部分的每个多边形面插入 到渲染列表中;  Inserting a render list module for inserting each polygon face of the visible portion of the three-dimensional graphic into the render list;
背面消除模块, 用于消除被遮挡的三维图形中的多边形面;  a back side elimination module for eliminating a polygon surface in the occluded three-dimensional figure;
相机坐标变换模块, 用于依据相机视点对三维图形进行变换; 三维物体空间裁剪模块, 用于依据三维视景体对三维图形中可见的部 分进行裁剪;  a camera coordinate transformation module, configured to transform a three-dimensional graphic according to a camera viewpoint; a three-dimensional object spatial cutting module, configured to cut a visible portion of the three-dimensional graphic according to the three-dimensional visual body;
光照着色模块, 用于将三维图形由线框渲染为实体, 以增强三维图形 的三维真实感;  A lighting coloring module for rendering a three-dimensional graphic from a wireframe to a solid to enhance the three-dimensional realism of the three-dimensional graphic;
纹理映射模块, 用于将一幅二维图像作为纹理贴到三维图形的一个多 边形面上;  a texture mapping module, configured to paste a two-dimensional image as a texture onto a polygonal surface of the three-dimensional graphic;
透视变换模块, 用于将相机坐标变换为透视坐标, 以使得三维图形变 换为二维图片;  a perspective transformation module, configured to transform camera coordinates into perspective coordinates, so that the three-dimensional graphics are converted into two-dimensional images;
图像空间裁剪模块, 用于将透视坐标变换为屏幕坐标; 还用于将越过 了屏幕边界的三维图形的部分进行裁剪;  An image space cropping module for transforming perspective coordinates into screen coordinates; and for cutting a portion of the three-dimensional graphic that crosses the screen boundary;
光栅化模块, 用于渲染三维图形到显示緩沖区。  Rasterization module for rendering 3D graphics to the display buffer.
4、 根据权利要求 1或 3所述的三维界面显示装置, 其特征在于, 所述 三维渲染引擎依据三维界面渲染指令对被操作的三维图形执行渲染处理包 括:  The three-dimensional interface display device according to claim 1 or 3, wherein the three-dimensional rendering engine performs rendering processing on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction:
依据用户对三维图形的操作, 将三维图形的模型坐标值变换为世界坐 标值;  Transforming the model coordinate values of the three-dimensional graphics into world coordinate values according to the user's operation on the three-dimensional graphics;
将三维图形的每个多边形面插入到渲染列表中;  Insert each polygon face of the 3D graphic into the render list;
创建照相机变换矩阵;  Create a camera transformation matrix;
消除处于背面的多边形;  Eliminate polygons on the back side;
依据相机视点将三维图形的世界坐标值变换为相机坐标值; 根据三维视景体对只能看到一部分的三维图形进行裁剪; 对渲染列表执行深度排序; Converting the world coordinate value of the three-dimensional graphic into a camera coordinate value according to the camera viewpoint; According to the 3D view body, the 3D graphics that can only be seen part of the cropping are performed; the depth sorting is performed on the rendering list;
将三维图形的相机坐标值变换为屏幕坐标值, 将三维图形由线框渲染 为实体;  Converting the camera coordinate values of the three-dimensional graphics into screen coordinate values, and rendering the three-dimensional graphics from the wireframe to an entity;
绘制渲染场景, 并将渲染后的三维图形保存到显存中。  Draw the rendered scene and save the rendered 3D graphics to the video memory.
5、 一种终端, 其特征在于, 包括如权利要求 1至 4任一所述的三维界 面显示装置。  A terminal characterized by comprising the three-dimensional interface display device according to any one of claims 1 to 4.
6、 一种三维界面显示方法, 其特征在于, 其应用于三维界面显示装置 中, 所述三维界面显示装置包括三维界面视图模块、 三维控制器, 以及三 维渲染引擎, 所述方法包括:  A three-dimensional interface display device, wherein the three-dimensional interface display device comprises a three-dimensional interface view module, a three-dimensional controller, and a three-dimensional rendering engine, the method comprising:
三维界面视图模块检测用户对三维图形的操作并将其发送至三维控制 器;  The three-dimensional interface view module detects the user's operation on the three-dimensional graphics and sends it to the three-dimensional controller;
三维控制器依据用户的操作向三维处理引擎发送三维界面渲染指令; 三维渲染引擎依据所述三维界面渲染指令对被操作的三维图形执行渲 染处理。  The three-dimensional controller sends a three-dimensional interface rendering instruction to the three-dimensional processing engine according to the user's operation; and the three-dimensional rendering engine performs a rendering process on the operated three-dimensional graphic according to the three-dimensional interface rendering instruction.
7、 根据权利要求 6所述的三维界面显示方法, 其特征在于, 所述三维 界面视图模块包括图形用户界面窗口数据模块、 用户输入检测模块, 以及 屏幕交互模块, 其中,  The method of displaying a three-dimensional interface according to claim 6, wherein the three-dimensional interface view module comprises a graphical user interface window data module, a user input detection module, and a screen interaction module, wherein
图形用户界面窗口数据模块,用于封装图形用户界面 GUI的窗口信息; 用户输入检测模块, 用于检测用户对三维图形的操作并将其发送至三 维控制器;  a graphical user interface window data module for encapsulating window information of the GUI of the graphical user interface; a user input detection module for detecting the operation of the user on the three-dimensional graphics and transmitting the same to the three-dimensional controller;
屏幕交互模块, 用于显示三维界面。  A screen interaction module for displaying a three-dimensional interface.
8、 根据权利要求 6所述的三维界面显示方法, 其特征在于, 所述三维 渲染引擎至少包括模型坐标变换模块、 世界坐标变换模块、 物体剔除模块、 插入渲染列表模块、 背面消除模块、 相机坐标变换模块、 光照着色模块、 三维物体空间裁剪模块、 纹理映射模块、 透视变换模块、 图像空间裁剪模 块、 以及光栅化模块中的一种, 其中, The method of displaying a three-dimensional interface according to claim 6, wherein the three-dimensional rendering engine comprises at least a model coordinate transformation module, a world coordinate transformation module, an object rejection module, an insertion rendering list module, a back surface elimination module, and camera coordinates. Transform module, light shader module, a one of a three-dimensional object space cropping module, a texture mapping module, a perspective transformation module, an image space clipping module, and a rasterization module, wherein
模型坐标变换模块, 用于对三维图形的模型坐标进行变换;  a model coordinate transformation module, configured to transform model coordinates of the three-dimensional graphics;
世界坐标变换模块, 用于依据三维图形的位置将模型坐标变换为世界 坐标;  a world coordinate transformation module, configured to transform model coordinates into world coordinates according to the position of the three-dimensional graphics;
物体剔除模块, 用于在执行世界坐标到相机坐标变换之前, 选择并剔 除三维图形中相对相机视点而言不可见的部分;  An object culling module for selecting and rejecting portions of the three-dimensional graphics that are invisible relative to the camera viewpoint before performing world coordinate to camera coordinate transformation;
插入渲染列表模块, 用于将三维图形的可见部分的每个多边形面插入 到渲染列表中;  Inserting a render list module for inserting each polygon face of the visible portion of the three-dimensional graphic into the render list;
背面消除模块, 用于消除被遮挡的三维图形中的多边形面;  a back side elimination module for eliminating a polygon surface in the occluded three-dimensional figure;
相机坐标变换模块, 用于依据相机视点对三维图形进行变换; 三维物体空间裁剪模块, 用于依据三维视景体对三维图形中可见的部 分进行裁剪;  a camera coordinate transformation module, configured to transform a three-dimensional graphic according to a camera viewpoint; a three-dimensional object spatial cutting module, configured to cut a visible portion of the three-dimensional graphic according to the three-dimensional visual body;
光照着色模块, 用于将三维图形由线框渲染为实体, 以增强三维图形 的三维真实感;  A lighting coloring module for rendering a three-dimensional graphic from a wireframe to a solid to enhance the three-dimensional realism of the three-dimensional graphic;
纹理映射模块, 用于将一幅二维图像作为纹理贴到三维图形的一个多 边形面上;  a texture mapping module, configured to paste a two-dimensional image as a texture onto a polygonal surface of the three-dimensional graphic;
透视变换模块, 用于将相机坐标变换为透视坐标, 以使得三维图形变 换为二维图片;  a perspective transformation module, configured to transform camera coordinates into perspective coordinates, so that the three-dimensional graphics are converted into two-dimensional images;
图像空间裁剪模块, 用于将透视坐标变换为屏幕坐标; 还用于将越过 了屏幕边界的三维图形的部分进行裁剪;  An image space cropping module for transforming perspective coordinates into screen coordinates; and for cutting a portion of the three-dimensional graphic that crosses the screen boundary;
光栅化模块, 用于渲染三维图形到显示緩沖区。  Rasterization module for rendering 3D graphics to the display buffer.
9、 根据权利要求 6所述的三维界面显示方法, 其特征在于, 所述三维 渲染引擎依据三维界面渲染指令对被操作的三维图形执行渲染处理包括: 依据用户对三维图形的操作, 将三维图形的模型坐标值变换为世界坐 标值; The three-dimensional interface display method according to claim 6, wherein the three-dimensional rendering engine performs rendering processing on the operated three-dimensional graphics according to the three-dimensional interface rendering instruction, including: according to the operation of the three-dimensional graphics by the user, the three-dimensional graphics Model coordinate values are transformed into world sitting Mark value
将三维图形的每个多边形面插入到渲染列表中;  Insert each polygon face of the 3D graphic into the render list;
创建照相机变换矩阵;  Create a camera transformation matrix;
消除处于背面的多边形;  Eliminate polygons on the back side;
依据相机视点将三维图形的世界坐标值变换为相机坐标值;  Converting the world coordinate value of the three-dimensional graphic into a camera coordinate value according to the camera viewpoint;
根据三维视景体对只能看到一部分的三维图形进行裁剪;  According to the three-dimensional view body, the three-dimensional graphics that can only be seen part of the cropping are cut;
对渲染列表执行深度排序;  Perform depth sorting on the render list;
将三维图形的相机坐标值变换为屏幕坐标值, 将三维图形由线框渲染 为实体;  Converting the camera coordinate values of the three-dimensional graphics into screen coordinate values, and rendering the three-dimensional graphics from the wireframe to an entity;
绘制渲染场景, 并将渲染后的三维图形保存到显存中。  Draw the rendered scene and save the rendered 3D graphics to the video memory.
PCT/CN2012/077950 2011-12-01 2012-06-29 Three-dimensional interface display device, method and terminal WO2013078859A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201110393176.4A CN102523473B (en) 2011-12-01 2011-12-01 A kind of three-dimensional interface display device, method and terminal
CN201110393176.4 2011-12-01

Publications (1)

Publication Number Publication Date
WO2013078859A1 true WO2013078859A1 (en) 2013-06-06

Family

ID=46294249

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/077950 WO2013078859A1 (en) 2011-12-01 2012-06-29 Three-dimensional interface display device, method and terminal

Country Status (2)

Country Link
CN (1) CN102523473B (en)
WO (1) WO2013078859A1 (en)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102523473B (en) * 2011-12-01 2016-08-31 南京中兴软件有限责任公司 A kind of three-dimensional interface display device, method and terminal
US9536345B2 (en) * 2012-12-26 2017-01-03 Intel Corporation Apparatus for enhancement of 3-D images using depth mapping and light source synthesis
CN103092612B (en) * 2012-12-31 2016-12-28 深圳天珑无线科技有限公司 Realize method and the electronic installation of Android operation system 3D desktop pinup picture
CN103309562A (en) * 2013-06-28 2013-09-18 北京小米科技有限责任公司 Desktop display method, desktop display device and mobile terminal
CN103455970A (en) * 2013-08-30 2013-12-18 天津市测绘院 Method for accelerated display of invisible part by three-dimensional digital urban system model
CN104598182B (en) * 2014-12-25 2018-02-02 北京数码大方科技股份有限公司 Three-dimensional demonstration method and device for document
CN105808220B (en) * 2014-12-30 2020-03-17 深圳Tcl数字技术有限公司 Method and device for displaying three-dimensional effect by application program
CN105007480A (en) * 2015-07-06 2015-10-28 上海玮舟微电子科技有限公司 Naked-eye three-dimensional (3D) display method and system for 3D data
CN106412562B (en) * 2015-07-31 2019-10-25 深圳超多维科技有限公司 The method and its system of stereo content are shown in three-dimensional scenic
CN105894566A (en) * 2015-12-01 2016-08-24 乐视致新电子科技(天津)有限公司 Model rendering method and device
CN107045437A (en) * 2016-02-05 2017-08-15 阿里巴巴集团控股有限公司 A kind of method for realizing batch render, device and equipment
CN108537874A (en) * 2017-03-01 2018-09-14 黎志毅 The method that three-dimensional light data is automatically switched to UE4
CN107015654A (en) * 2017-04-10 2017-08-04 深圳大学 Air navigation aid and device based on augmented reality
CN107527377B (en) * 2017-08-25 2020-10-16 扆冰蕾 Three-dimensional virtual earth-suspended Chinese character rendering method based on mobile platform
CN107608608B (en) * 2017-09-25 2021-01-26 浙江科澜信息技术有限公司 Information interaction method, device and system of three-dimensional graphic rendering engine
CN108305208A (en) * 2017-12-12 2018-07-20 杭州品茗安控信息技术股份有限公司 A kind of optimization of model dynamic analysis and three-dimension interaction processing method
CN108479067B (en) 2018-04-12 2019-09-20 网易(杭州)网络有限公司 The rendering method and device of game picture
CN108734792B (en) * 2018-05-24 2020-11-13 北京邮电大学 Holographic projection auxiliary teaching method, device and system with remote interaction function
CN109828818B (en) * 2019-01-29 2022-03-01 广联达科技股份有限公司 Primitive style transformation method based on browser-side display engine
CN109887078B (en) * 2019-03-12 2023-04-07 阿波罗智联(北京)科技有限公司 Sky drawing method, device, equipment and medium
CN110232718B (en) * 2019-05-10 2021-01-08 西安航天动力试验技术研究所 Three-dimensional waterfall graph rendering color customization method
CN113808271A (en) * 2020-06-17 2021-12-17 广东博智林机器人有限公司 Rendering method and device of three-dimensional model, electronic equipment and storage medium
CN114419230A (en) * 2022-01-21 2022-04-29 北京字跳网络技术有限公司 Image rendering method and device, electronic equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060236260A1 (en) * 2004-12-09 2006-10-19 Microsoft Corporation Journal display having three dimensional appearance
CN101340598A (en) * 2008-08-07 2009-01-07 北京衡准科技有限公司 Method and apparatus for implementing three-dimensional playing of media
CN101500328A (en) * 2008-02-02 2009-08-05 德信智能手机技术(北京)有限公司 Apparatus and method for implementing three-dimension interaction on mobile phone
CN102523473A (en) * 2011-12-01 2012-06-27 中兴通讯股份有限公司 Three-dimensional interface display device, method and terminal

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060236260A1 (en) * 2004-12-09 2006-10-19 Microsoft Corporation Journal display having three dimensional appearance
CN101500328A (en) * 2008-02-02 2009-08-05 德信智能手机技术(北京)有限公司 Apparatus and method for implementing three-dimension interaction on mobile phone
CN101340598A (en) * 2008-08-07 2009-01-07 北京衡准科技有限公司 Method and apparatus for implementing three-dimensional playing of media
CN102523473A (en) * 2011-12-01 2012-06-27 中兴通讯股份有限公司 Three-dimensional interface display device, method and terminal

Also Published As

Publication number Publication date
CN102523473B (en) 2016-08-31
CN102523473A (en) 2012-06-27

Similar Documents

Publication Publication Date Title
WO2013078859A1 (en) Three-dimensional interface display device, method and terminal
KR102322589B1 (en) Location-based virtual element modality in three-dimensional content
US11710287B2 (en) Generative latent textured proxies for object category modeling
WO2013184534A4 (en) Non-static 3d map views
US20070139408A1 (en) Reflective image objects
JP2014135086A (en) Three dimensional user interface effects on display by using properties of motion
CN106415667A (en) Computer graphics with enhanced depth effect
US20190026935A1 (en) Method and system for providing virtual reality experience based on ultrasound data
JP2012190428A (en) Stereoscopic image visual effect processing method
CN102044084A (en) Two-dimensional plane expression method of three-dimensional graph
CN108804061A (en) The virtual scene display method of virtual reality system
CN114514493A (en) Reinforcing apparatus
CN111710019B (en) Virtual paper
CN101511034A (en) Truly three-dimensional stereo display method facing Skyline
KR101428577B1 (en) Method of providing a 3d earth globes based on natural user interface using motion-recognition infrared camera
Mortensen et al. Real-time global illumination for vr applications
KR20190013146A (en) Rendering optimization method for real-time mass processing of 3d objects in mobile environment
WO2024027237A1 (en) Rendering optimization method, and electronic device and computer-readable storage medium
WO2023119715A1 (en) Video generation method and image generation program
JP2009140370A (en) Program, information storage medium, and image generation system
JP2007164736A (en) Image generation system, program and information storage medium
Walia et al. A framework for interactive 3D rendering on mobile devices
CN116416386A (en) Digital twin L5-level simulation-based high-definition rendering and restoring system
JP2003022453A (en) Method and device for plotting processing, recording medium having plotting processing program, recorded thereon, and plotting processing program
Gao et al. Parallax Effect of rendering on the Surface with Small Detail

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12854287

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12854287

Country of ref document: EP

Kind code of ref document: A1