Real-time rendering method of three-dimensional object

By precalculating the sorting list of light-transmissive elements in advance and using the images in the previous step during the rendering process, the inaccuracy problem of light-transmissive elements overlapping when rendering three-dimensional objects in the prior art is solved, and the rendering effect with high accuracy and low computing cost is achieved.

CN120226052APending Publication Date: 2025-06-27LUXOTTICA GRP SPA
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380078107.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-12-22
Filing Date
2023-12-19
Publication Date
2025-06-27

AI Technical Summary

Technical Problem

In the prior art, when rendering three-dimensional objects in real time, especially objects containing light-transmitting elements, it is difficult to accurately handle overlap between light-transmitting elements, resulting in inaccurate rendering or errors.

Method used

The pre-calculation program pre-calculates the sorting list of light-transmissive elements, renders according to the predetermined pose that is closest to the desired pose, and uses the image from the previous step during the rendering process to determine the spectrum of the light-transmissive elements, ensuring that the logical order of rendering is from the farthest to the closest.

Benefits of technology

The computational cost required to render complex objects with different materials and structures is reduced, and objects with different parts and components with light transmission capabilities overlapping each other can be accurately rendered.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120226052A_ABST
    Figure CN120226052A_ABST
Patent Text Reader

Abstract

A method (100) for real-time rendering of a three-dimensional object, the method comprising the following phases: performing (110) a rendering of a substantially opaque element, implementing at least one first image; -performing (120) a plurality of sequential steps i, i ranging from 1 to N, in which the translucent elements are rendered from farthest to closest from the virtual video / photograph camera according to a predetermined ordered list, implementing a respective plurality of second images, one or more light-transmissive elements farthest from the virtual video / photograph camera are rendered using the at least one first image to determine a spectrum of light directed to the virtual video / photograph camera from the light-transmissive element to be rendered, and wherein in each step i after the first step, the light-transmissive element is rendered by the at least one first image; rendering one or more of the light-transmissive elements using a second image obtained in an immediately preceding step i-1 to determine a spectrum of light directed towards the virtual video / photograph camera from the light-transmissive element to be rendered; a predetermined ordered list is selected by a pre-computation program (200) from a plurality of pre-computed ordered lists, where each pre-computed ordered list relates to a respective predetermined pose of the three-dimensional object relative to the virtual video / photograph camera, the selected predetermined ordered list being a predetermined ordered list with respect to a predetermined pose closest to the desired pose.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] ------

[0002] The present invention relates to a method for real-time rendering of three-dimensional objects by using an electronic terminal such as a smart phone, a laptop computer, etc.

[0003] Rendering a three-dimensional object refers to the operation of representing a three-dimensional object placed in a virtual three-dimensional space and observed from a determined viewing point (i.e., a virtual video / photo camera) by computer graphics.

[0004] Real-time rendering means that the above operation represented by computer graphics must be updated in real time after the viewing point changes (i.e., after the virtual processing of the virtual video / photo camera in the virtual space).

[0005] In the present disclosure, the case of glasses will be considered in an exemplary and non-limiting manner, and the following more general cases applicable to any three-dimensional object will be considered.

[0006] As is well known, glasses include a frame connected to lenses, wherein the frame includes a front portion adapted to be connected to and support the lenses and two temple arms, and the temple arms are rotatably connected to the front portion by hinges so as to switch from a closed position where the temple arms are folded against each other to an open position where the temple arms can be used on the user's head.

[0007] In the present disclosure, the three-dimensional object is intended to be formed by multiple parts, such as the temple arms, the front portion, and the lenses of glasses, wherein each part is intended to be formed by multiple elements, for example, the metal core of the temple arm and the structure of the temple arm containing the metal core.

[0008] As is well known, rendering is commonly used in different industries, from the gaming industry to the film industry, from the construction industry to the more general design industry, and then to the e-commerce industry, etc.

[0009] The more accurate the rendering, the higher the photo-realistic level it achieves.

[0010] Therefore, it is necessary to render as accurately as possible the configuration and characteristics of the real constituent materials of the three-dimensional object (for example, the optical characteristics of the materials that have a significant impact on the degree of photo-realistic level to be achieved). Imagine that, depending on the light-transmitting characteristics of the material, the material can be substantially opaque (such as metal), or substantially transparent (such as glass), or partially transparent (such as gel).

[0011] The above optical characteristics can also originate from the structure of the three-dimensional object; for example, although a fabric is composed of yarns of an opaque material, it can be partially transparent if the yarns are not particularly dense, that is, if its covering index is less than 1. In particular, the lower the covering index, the higher the transparency of the fabric.

[0012] In any case, the optical characteristics have a significant impact on the graphic rendering of three-dimensional objects; for example, in the case where the object has multiple parts that overlap each other, and these parts include substantially opaque elements, substantially transparent elements, or partially transparent elements, when rendering, it is necessary to consider making the substantially transparent elements show the elements behind them.

[0013] In the context of the present disclosure, the expression "substantially opaque" is intended to indicate that the body has the following characteristics: the body does not transmit light of visible wavelengths, and the optical transmittance value at such wavelengths is close to zero.

[0014] The expression "substantially transparent" is intended to indicate that the body has the following characteristics: the body transmits light of visible wavelengths, and the optical transmittance value at such wavelengths is close to one.

[0015] The expression "partially transparent" is intended to indicate that the body has the following characteristics: the body transmits light of visible wavelengths, and the optical transmittance value at such wavelengths is greater than zero and less than one.

[0016] Bodies that are substantially transparent or partially transparent due to their constituent materials or structures are more generally referred to as light-transmissive; the term "light-transmissive" is intended to indicate the characteristic that the body transmits light of visible wavelengths.

[0017] Visible wavelengths are intended to indicate wavelengths between 350 nm and 750 nm.

[0018] The lens can be transparent or partially transparent, so the lens is light-transmissive. The front part and the temples can be made of the same material or different materials, and can be completely opaque or partially opaque, transparent or partially transparent.

[0019] Depending on the position taken by the temples and the viewing point, the light-transmissive front part and the lens can show different elements of the temples located behind the front part relative to the viewing point; if the elements of the temples are also light-transmissive, the temples can show the elements behind them or the core in the temples.

[0020] Therefore, depending on the position taken by the temples and the viewing point, rendering the glasses can achieve different levels of complexity. In any case, the real-time rendering method must be able to adapt to the different levels of complexity of graphic rendering.

[0021] In order to graphically represent three-dimensional objects (such as glasses with different light-transmissive capabilities in terms of form and material) on a computer, a first type of real-time rendering method is known, and this method implements the following stages:

[0022] - Describe the three-dimensional object to be rendered by a three-dimensional mathematical model such that the relative positions of the elements of each part of the object in virtual space are known;

[0023] - Perform rendering of substantially opaque elements to obtain a first image;

[0024] - Use the mutual position data included in the above three-dimensional mathematical model and the previously obtained image of the substantially opaque element to perform rendering of the transparent element to determine the spectrum of the light directed from the transparent element to be rendered to the virtual video / photo camera, thereby obtaining at least one second image.

[0025] Specifically, in the virtual space, the mutual positioning of the elements to be rendered of the various parts of the known three-dimensional object is known, and the first image is used as a boundary condition for a numerical simulation aimed at obtaining, pixel by pixel, the spectrum of the light received by the virtual video / photo camera. The numerical simulation is implemented by considering the light sources placed in the virtual space and calculating, pixel by pixel, the light received by the virtual video / photo camera after absorption, reflection, and transmission by the elements placed in the virtual space.

[0026] In an embodiment, each transparent element is rendered one at a time relative to the virtual video / photo camera, thereby obtaining a corresponding plurality of second images.

[0027] In this case, the rendering cannot be performed in the correct order from the farthest transparent element to the nearest one. Therefore, the determined spectrum of the light directed from the transparent element to be rendered to the virtual video / photo camera may be incorrect. In this case, if there are two or more overlaps between the transparent elements in the three-dimensional object to be represented, the rendering may be inaccurate or even substantially incorrect.

[0028] Alternatively, all the transparent elements are rendered together to obtain a single second image. Even in this case, if there are two or more overlaps between the transparent elements in the three-dimensional object to be represented, the rendering may be inaccurate or even substantially incorrect.

[0029] Actually, in Figure 1 , a rendering obtained by a first type of technique is depicted, in which the substantially opaque core of the temple can be seen behind the partially transparent lens, but the partially transparent structure of the temple itself cannot be seen.

[0030] To overcome these drawbacks, a second type of rendering technique is known, which implements the following stages:

[0031] - Sort the transparent elements from the farthest to the nearest relative to the observation point to obtain a logical order;

[0032] - Perform rendering of the substantially opaque elements to obtain an image;

[0033] - Execution of a plurality of sequential steps, wherein in each step the light-transmitting elements are rendered from the farthest to the nearest according to a logical order previously obtained by realising at least one second image, using the image obtained in the previous step to determine the spectrum of the light directed towards the virtual video / photo camera from the light-transmitting element to be rendered.

[0034] Sorting of components can be performed using different techniques, provided that the following requirements are met:

[0035] - These elements must not interpenetrate each other;

[0036] - These elements must be convex.

[0037] A first known sorting technique provides for calculating the distance of each element, more specifically the reference point of each element, from the observation point. However, this sorting technique is rather crude and does not ensure a correct sorting, since it depends on the configuration of the elements and the position of the reference point when rendering.

[0038] Alternatively, the ordering of the elements can be performed by a so-called ray casting technique, which provides for tracing a number of rays directed towards the light-transmitting elements starting from the observation point and detecting the intersections of these rays with other elements. In this way, if a ray successively encounters three light-transmitting elements, it is determined which is the nearest, the middle and the farthest.

[0039] This sorting technique is more accurate than the previous one, but its accuracy depends on the number of rays traced and the geometry of the 3D object; the greater the number of rays, the higher the computational cost, which is already high. This high computational cost prevents ray casting from being used in real-time rendering.

[0040] The object of the present invention is to overcome the above-mentioned drawbacks and in particular to conceive a method for real-time rendering of three-dimensional objects with both high accuracy and low computational cost.

[0041] These and other objects according to the present invention are achieved by implementing the real-time rendering method of a three-dimensional object as claimed in claim 1.

[0042] The method for real-time rendering of three-dimensional objects is further characterized by the objects of the dependent claims.

[0043] The features and advantages of the method for real-time rendering of a three-dimensional object according to the present invention will become more apparent from the following exemplary and non-limiting description with reference to the accompanying schematic drawings, in which:

[0044] - Figure 1 is a flow chart showing a rendering method according to the present invention;

[0045] - Figure 2It is a flowchart showing the pre - calculation program included in the rendering method according to the present invention.

[0046] Referring to the accompanying drawings, a real - time rendering method of a three - dimensional object is shown, and this method is generally denoted by 100.

[0047] This rendering method 100 can be implemented by an electronic calculator provided with a memory for data storage. In particular, the rendering method 100 can be implemented by a rendering program or software loaded in the memory of the calculator.

[0048] Therefore, such a rendering program includes instructions that cause the electronic calculator to implement the rendering method 100 when the electronic calculator executes the program.

[0049] Rendering is implemented by considering positioning the three - dimensional object in a virtual three - dimensional space XYZ and observing the three - dimensional object from a virtual observation point that coincides with the position of a moving virtual video / photo camera. The virtual three - dimensional space XYZ can, for example, have an origin that coincides with the center of the smallest parallelepiped containing the three - dimensional object. In such a virtual three - dimensional space XYZ, the position of the virtual video / photo camera is identified by spherical coordinates. Different postures of the three - dimensional object correspond to the respective positions of the virtual video / photo camera.

[0050] The three - dimensional object includes a plurality of parts 20, where each of these parts is formed by one or more elements, and the one or more elements can be opaque elements or light - transmitting elements.

[0051] For example, the three - dimensional object is a pair of glasses, which includes a frame connected to the lenses. The frame includes a front part adapted to be connected to and support the lenses and two temple arms. The temple arms are rotatably connected to the front part by hinges so as to switch from a closed position where the temple arms are folded against each other to an open position where the temple arms can be used on the user's head. The lenses, temple arms, and front part are parts of the three - dimensional object.

[0052] For example, the temple arms include at least partially transparent structures (i.e., light - transmitting elements) and substantially opaque metal cores (i.e., opaque elements).

[0053] The rendering method 100 according to the present invention includes the following stages performed for each desired posture of the three - dimensional object:

[0054] - Performing 110 the rendering of substantially opaque elements to obtain at least one first image;

[0055] -Execute more than 120 sequential steps i, where i = 1, 2, …, N. In this process, the light-transmitting elements are rendered from the farthest to the nearest to the virtual video / photo camera according to a predetermined ordered list, and a corresponding plurality of second images are realized. In the first step i = 1, at least one first image is used to render one or more light-transmitting elements that are the farthest from the virtual video / photo camera to determine the spectrum of the light directed from the light-transmitting elements to be rendered towards the virtual video / photo camera. And in each step i after the first step, the second image obtained in the immediately preceding step i - 1 is used to render one or more of the light-transmitting elements to determine the spectrum of the light directed from the light-transmitting elements to be rendered towards the virtual video / photo camera.

[0056] Specifically, in each step, the image realized in the previous step is used as the boundary condition for numerical simulation in the virtual space. This numerical simulation aims to obtain the spectrum of the light received by the virtual video / photo camera pixel by pixel. The numerical simulation is implemented by considering the light sources placed in the virtual space and calculating pixel by pixel the light received by the virtual video / photo camera after being absorbed, reflected, and transmitted by the elements placed in the virtual space.

[0057] Advantageously, the predetermined ordered list is selected from a plurality of pre-computed ordered lists by the pre-computation program 200. Each pre-computed ordered list relates to a corresponding predetermined pose of the three-dimensional object relative to the virtual video / photo camera. In particular, the selected predetermined ordered list is the predetermined ordered list regarding the predetermined pose closest to the desired pose.

[0058] The predetermined pose closest to the desired pose is to place the virtual video / photo camera at the minimum angular distance from the virtual video / photo camera at the desired pose.

[0059] Therefore, the sorting of the light-transmitting elements is pre-computed for a plurality of predetermined poses.

[0060] The rendering method considers in real time the pre-computed ordered list of the light-transmitting elements relative to the predetermined pose closest to the desired pose for each desired pose.

[0061] Due to the existence of the stage of pre-computing the predetermined ordered list and the approximation of the desired pose to one of the predetermined poses, compared with the prior art, the rendering method 100 according to the present invention reduces the computational cost required to render complex objects with elements made of various materials and parts with various structures. In fact, the rendering method 100 does not provide real-time calculation of the ordered list for different predetermined poses. Instead, the rendering method 100 provides for the execution of the pre-computation program 200 before the rendering of the three-dimensional object. Therefore, the execution of this pre-computation program 200 is independent of the execution of the rendering method 100 and is executed in an offline mode, that is, this pre-computation program is not executed in real time when the rendering method is executed.

[0062] In addition, since the image achieved in the previous step is used in each i-th step, the rendering method 100 allows for a very accurate and faithful rendering of an object having parts and elements with different light-transmitting capabilities that overlap each other.

[0063] Preferably, the precomputation of the ordered list is performed by the precomputation program 200 when the following conditions are met:

[0064] - The three-dimensional object cannot have elements that interpenetrate each other;

[0065] - The three-dimensional object must be convex and thus cannot have concave elements.

[0066] In the case where the three-dimensional object includes one or more concave elements, each of such concave elements is divided into a plurality of sub-elements.

[0067] This division is performed in an attempt to obtain only convex sub-elements; however, the convexity of the sub-elements is not a constraint for the division.

[0068] Preferably, non-overlapping light-transmitting elements are rendered in the same i-th step.

[0069] In this way, since fewer second images are provided and thus fewer rendering steps are provided, the computational cost of the rendering method 100 is further reduced.

[0070] Preferably, when the virtual video / photo camera moves, the size of at least one first image and second image is reduced according to a reduction factor between 1 and 5 compared to when the virtual video / photo camera is stationary. In particular, only at least one first image and second image that are to be used to determine the spectrum of the light directed from the light-transmitting elements to be rendered towards the virtual video / photo camera are calculated in the reduced size.

[0071] The movement of the virtual video / photo camera means modifying the virtual viewing point not only in terms of distance but also in terms of angle with respect to the reference system XYZ by an algorithm or automatic animation or by the user (e.g., by using a mouse or keyboard or other interface device). Looking at the monitor, manipulating the virtual video / photo camera means zooming in / out and rotating the three-dimensional object.

[0072] Preferably, the precomputation program 200 includes the following phases performed for each predetermined pose:

[0073] - For each light-transmitting element of the three-dimensional object, tracing 210 multiple rays starting from the virtual video / photo camera and directed towards the corresponding multiple points of the light-transmitting element;

[0074] - Detect the intersection of each of these 220 light rays with all the elements of the three-dimensional object, thereby obtaining a first detected intersection list;

[0075] - Perform a first screening phase 230, in which intersections that are duplicates with respect to the same element, intersections with substantially opaque elements, and intersections with a transparent element after an intersection with a substantially opaque element are removed from the first detected intersection list, thereby obtaining a second detected intersection list;

[0076] - Derive 240 from the second detected intersection list a list of second positional relationships between pairs of transparent elements;

[0077] - Count 250 the occurrences of the derived positional relationships.

[0078] Preferably, the precomputation program 200 further includes a second screening phase 260, which provides the following phases:

[0079] - Remove 260 from the second positional relationship list the positional relationships for which the ratio of the number of occurrences to the number of light rays directed to one of the elements of the corresponding pair is less than a predetermined threshold, thereby obtaining a third positional relationship list.

[0080] In this way, the positional relationships for pairs of transparent elements with a low degree of mutual overlap are removed.

[0081] For example, the transparent elements with a low degree of mutual overlap are those obtained from the division of a concave original transparent element.

[0082] Preferably, the precomputation program 200 further includes the following phases:

[0083] - Insert 270 at least one structural relationship between at least two elements of the three-dimensional object;

[0084] - Modify 280 the second positional relationship list or the possible third positional relationship list based on the at least one inserted structural relationship, thereby obtaining a fourth positional relationship list.

[0085] A structural relationship refers to a specification of the mutual positioning of parts or elements derived from the knowledge of the typical configuration of the three-dimensional object.

[0086] Preferably, in the insertion phase 270, all precomputed pose structural relationships are inserted.

[0087] For example, in the case where the three-dimensional object is a pair of glasses, it is known that in a top view, the temple, the front part, and the lens cannot overlap, or it is known that in a side view, one temple must be visible and the other temple must be in a rear position.

[0088] This type of known positional relationship is defined as a structural relationship and designated as a positional constraint to facilitate the sorting among the light-transmitting elements 22 of the three-dimensional object.

[0089] Preferably, the precomputation program 200 further includes the following stages:

[0090] - Verify 290 whether the second positional relationship list or the possible third positional relationship list or the possible fourth positional relationship list includes one or more contradictions, that is, one or more pairs of contradictory positional relationships;

[0091] - In the case where each contradiction is an affirmative result, obtain a fifth positional relationship list by performing the following stages:

[0092] - If the contradiction involves a first element and a second element, and the first element is a lens, remove 300 the positional relationship of the second element in front of the first element from the second positional relationship list or the possible third positional relationship list or the possible fourth positional relationship list;

[0093] - If the contradiction does not involve a lens, remove 310 the positional relationship with fewer occurrences from the second positional relationship list or the possible third positional relationship list or the possible fourth positional relationship list.

[0094] Preferably, the precomputation program 200 further includes the following stages:

[0095] - Verify 320 whether the second positional relationship list or the possible third positional relationship list or the possible fourth positional relationship list or the possible fifth positional relationship list includes one or more loops;

[0096] - In the case where each loop is an affirmative result, perform the following stages:

[0097] - Remove 330 the positional relationships of the loop with fewer occurrences.

[0098] Preferably, the precomputation program 200 further includes the following stages:

[0099] a) Derive 340 a sorting layer formed by all elements that are not in front of other elements from the second positional relationship list or the possible third positional relationship list or the possible fourth positional relationship list or the possible fifth positional relationship list;

[0100] b) Remove 350 the positional relationships in which the elements providing the sorting layer obtained in the previous step are behind other elements from the positional relationship list;

[0101] c) Repeat steps a) and b) until the length of the vector M of the positional relationship list > 0, that is, until length(M) > 0.

[0102] Thus, a pre-computed ordered list is obtained for each predetermined pose, which list is simply a series of sorted layers each including one or more elements.

[0103] Preferably, the light-transmissive elements can be marked as belonging to a first type or a second type. In particular, the light-transmissive elements of the first type are capable of transmitting light of visible wavelengths due to their constituent materials. For example, the light-transmissive elements of the first type are lenses or transparent or partially transparent frame parts.

[0104] The light-transmissive elements of the second type are capable of transmitting light of visible wavelengths due to their structure. For example, the light-transmissive elements of the second type can be fabrics or generally textured elements with letters or decorative patterns, or made of discontinuous opaque parts that allow light to pass through the remaining gaps.

[0105] In the case where the light-transmissive elements are marked as above, preferably, if a sorted layer includes only light-transmissive elements of the second type, such a sorted layer is cancelled, and the light-transmissive elements of the second type included in such a sorted layer are placed in the previous sorted layer, at the end of the light-transmissive elements already present in that sorted layer.

[0106] This reduces the number of sorted layers of the pre-computed ordered list and actually makes the rendering method 100 faster. In practice, the rendering method 100 is optimized to adapt to the different shapes of the three-dimensional objects to be rendered.

[0107] From the description made, the features of the rendering method which is the object of the present invention are clear and the related advantages are clear.

[0108] Finally, it is clear that the rendering method thus conceived is susceptible to numerous modifications and variations, all of which fall within the scope of the present invention; furthermore, all details can be replaced by technically equivalent elements. In practice, depending on the technical requirements, the materials used and the size can be any materials and size.

Claims

1. A real-time rendering method (100) for a three-dimensional object, the three-dimensional object being capable of presenting multiple desired poses relative to a moving virtual video / photo camera in a virtual space XYZ, wherein, The three-dimensional object includes a plurality of parts, and each part is formed by one or more elements. The rendering method (100) includes the following stages performed for each pose of the three-dimensional object: - Performing (110) the rendering of substantially opaque elements to achieve at least one first image; - Performing (120) a plurality of sequential steps i, where i ranges from 1 to N. In this case, the transmissive elements are rendered according to a predetermined ordered list from the farthest to the nearest to the virtual video / photo camera, achieving a corresponding plurality of second images. In the first step i = 1, the at least one first image is used to render one or more transmissive elements that are the farthest from the virtual video / photo camera to determine the spectrum of the light directed from the transmissive elements to be rendered to the virtual video / photo camera. And in each step i after the first step, the second image obtained in the immediately preceding step i - 1 is used to render one or more of the transmissive elements to determine the spectrum of the light directed from the transmissive elements to be rendered to the virtual video / photo camera; The predetermined ordered list is selected from a plurality of pre-computed ordered lists by a pre-computation program (200). Each pre-computed ordered list relates to a corresponding predetermined pose of the three-dimensional object relative to the virtual video / photo camera. The selected predetermined ordered list is the predetermined ordered list regarding the predetermined pose closest to the desired pose.

2. The real-time rendering method (100) of a three-dimensional object according to claim 1, wherein, The transmissive elements that do not overlap with each other are rendered in the same step.

3. The real-time rendering method (100) of a three-dimensional object according to claim 1 or 2, wherein, When the virtual video / photo camera moves, the sizes of the at least one first image and the second images are reduced according to a reduction factor between 1 and 5 compared to when the virtual video / photo camera is stationary.

4. The real-time rendering method (100) of a three-dimensional object according to one of the foregoing claims, wherein, The pre-computation program (200) of the pre-computed ordered list is executed under the following conditions: - The three-dimensional object cannot have elements that penetrate each other; - The three-dimensional object must be convex, so there cannot be concave elements; - If the three-dimensional object includes one or more concave elements, each of such concave elements is divided into a plurality of sub-elements.

5. The real-time rendering method (100) of a three-dimensional object according to claim 4, wherein, The pre-computation program (200) includes the following stages performed for each predetermined pose: - For each transmissive element of the three-dimensional object, tracing (210) a plurality of rays from the camera to corresponding points on the transmissive element; - Detecting (220) the intersection of each ray of the rays with all elements of the three-dimensional object to obtain a first detected intersection list; - Performing a first screening stage (230) to remove from the first detected intersection list the repeated intersections regarding the same element, the intersections with substantially opaque elements, and the intersections with the transmissive element after the intersections with the substantially opaque elements, thereby obtaining a second detected intersection list; - Deriving (240) a list of second positional relationships between pairs of transmissive elements from the second detected intersection list; - Counting (250) the occurrences of the derived positional relationships.

6. The real-time rendering method (100) of a three-dimensional object according to claim 5, wherein, The pre-computation program (200) includes a second screening phase (260), and the second screening phase provides the following phases: - Removing (260) from the second position relation list the positional relations between elements where the ratio of the number of occurrences to the number of light rays directed to one of the elements in the corresponding pair is less than a predetermined threshold, thereby obtaining a third position relation list.

7. The real-time rendering method (100) of a three-dimensional object according to claim 5 or 6, wherein, The offline independent pre-computation program (200) includes the following phases: - Inserting (270) at least one structural relation between at least two elements of the three-dimensional object; - Modifying (280) the second position relation list or the possible third position relation list based on the at least one inserted structural relation, thereby obtaining a fourth position relation list.

8. The real-time rendering method (100) of a three-dimensional object according to one or more of claims 4 to 7, wherein, The pre-computation program (200) includes the following phases: - Verifying whether the second position relation list or the possible third position relation list or the possible fourth position relation list includes one or more contradictions, that is, one or more pairs of contradictory position relations; - In the case where each contradiction is an affirmative result, obtaining a fifth position relation list by performing the following phases: - If the contradiction involves a first element and a second element, and the first element is a lens, removing (300) from the second position relation list or the possible third position relation list or the possible fourth position relation list the positional relation where the second element is in front of the first element; - If the contradiction does not involve a lens, removing (310) from the second position relation list or the possible third position relation list or the possible fourth position relation list the positional relation with fewer occurrences.

9. The real-time rendering method (100) of a three-dimensional object according to one or more of claims 4 to 8, wherein The pre-computation program (200) includes the following phases: - Verifying (320) whether the second position relation list or the possible third position relation list or the possible fourth position relation list or the possible fifth position relation list includes one or more cycles; - In the case where each cycle is an affirmative result, performing the following phases: - Removing (330) the positional relations of the cycle with fewer occurrences.

10. The real-time rendering method (100) of a three-dimensional object according to one or more of the preceding claims, wherein, The pre-computation program (200) includes the following phases: a) Deriving (340) from the second position relation list or the possible third position relation list or the possible fourth position relation list or the possible fifth position relation list a sorting layer formed by all elements that are not in front of other elements; b) Removing (350) from the second position relation list or the possible third position relation list or the possible fourth position relation list or the possible fifth position relation list the positional relations where the elements providing the sorting layer obtained in the previous step are behind other elements; c) Repeating steps a) and b) until the length of the vector M of the position relation list > 0, that is, until length(M)>0.

11. The real-time rendering method (100) of a three-dimensional object according to claim 10, wherein, The light-transmissive element is marked as belonging to a first type or a second type, and wherein, if the sorting layer only includes the light-transmissive elements of the second type, such a sorting layer is cancelled, and the light-transmissive elements of the second type included in such a sorting layer are placed in the previous sorting layer at the end of the light-transmissive elements already present in the sorting layer.

12. A computer program, which is loadable in a memory of an electronic calculator and includes instructions which, when the electronic calculator executes the program, cause the electronic calculator to implement the method (100) for real-time rendering of a three-dimensional object according to one or more of the preceding claims.