US20100156894A1 - Rendering 3D Data to Hogel Data - Google Patents

Rendering 3D Data to Hogel Data Download PDF

Info

Publication number
US20100156894A1
US20100156894A1 US12/606,099 US60609909A US2010156894A1 US 20100156894 A1 US20100156894 A1 US 20100156894A1 US 60609909 A US60609909 A US 60609909A US 2010156894 A1 US2010156894 A1 US 2010156894A1
Authority
US
United States
Prior art keywords
data
rendering
processing unit
graphics processing
hogel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12/606,099
Inventor
Wesley A. Holler
Gary Anthony McElroy, JR.
Michael E. Weiblen
Thomas Lawrence Burnett, III
Mark E. Lucente
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zebra Imaging Inc
Original Assignee
Zebra Imaging Inc
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 Zebra Imaging Inc filed Critical Zebra Imaging Inc
Priority to US12/606,137 priority Critical patent/US20100156895A1/en
Priority to US12/606,099 priority patent/US20100156894A1/en
Priority to US12/819,248 priority patent/US20110012895A1/en
Publication of US20100156894A1 publication Critical patent/US20100156894A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H1/00Holographic processes or apparatus using light, infrared or ultraviolet waves for obtaining holograms or for obtaining an image from them; Details peculiar thereto
    • G03H1/04Processes or apparatus for producing holograms
    • G03H1/08Synthesising holograms, i.e. holograms synthesized from objects or objects from holograms
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H1/00Holographic processes or apparatus using light, infrared or ultraviolet waves for obtaining holograms or for obtaining an image from them; Details peculiar thereto
    • G03H1/22Processes or apparatus for obtaining an optical image from holograms
    • G03H1/2294Addressing the hologram to an active spatial light modulator
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H2226/00Electro-optic or electronic components relating to digital holography
    • G03H2226/02Computing or processing means, e.g. digital signal processor [DSP]

Definitions

  • the invention relates generally to the field of rendering hogels and particularly to the field of converting 3D data to hogel data.
  • a method for rendering hogels comprising receiving a set of 3D data at a node, the node comprising a graphics processing unit, storing at least a subset of the set of 3D data in a buffer, rendering a first hogel view from the subset of 3D data using the graphics processing unit, and rendering a second hogel view by accessing the stored subset of 3D data using the graphics processing unit, where the rendering of the second hogel view is performed substantially in series to the rendering of the first hogel view.
  • a system for rendering hogels comprising one or more processors, and one or more memory units coupled to the processor, the system being configured to receive a set of 3D data at a node, the node comprising a graphics processing unit, store at least a subset of the set of 3D data in a buffer, render a first hogel view from the subset of 3D data using the graphics processing unit, and render a second hogel view by accessing the stored subset of 3D data using the graphics processing unit, where the rendering of the second hogel view is performed substantially in series to the rendering of the first hogel view.
  • a computer program product stored on a computer operable medium, the computer program product comprising software code being effective to receive a set of 3D data at a node, the node comprising a graphics processing unit, store at least a subset of the set of 3D data in a buffer, render a first hogel view from the subset of 3D data using the graphics processing unit, and render a second hogel view by accessing the stored subset of 3D data using the graphics processing unit, where the rendering of the second hogel view is performed substantially in series to the rendering of the first hogel view.
  • related articles, systems, and devices include but are not limited to circuitry, programming, electro-mechanical devices, or optical devices for effecting the herein referenced method aspects; the circuitry, programming, electro-mechanical devices, or optical devices can be virtually any combination of hardware, software, and firmware configured to effect the herein referenced method aspects depending upon the design choices of the system designer skilled in the art.
  • FIG. 1 is a block diagram illustrating a system for serially rendering 3D data to hogel data, in accordance with some embodiments.
  • FIG. 2 is a block diagram illustrating a system for serially and/or in parallel rendering 3D data to hogel data, in accordance with some embodiments.
  • FIG. 3 is a block diagram illustrating a system for synchronously distributing 3D data to one or more rendering nodes, in accordance with some embodiments.
  • FIG. 4 is a flow diagram illustrating a method for serially rendering 3D data to hogel data, in accordance with some embodiments.
  • FIG. 5 is a flow diagram illustrating a method for rendering serially and/or in parallel 3D data to hogel data, in accordance with some embodiments.
  • a node may be configured to receive 3D data/commands and to render the data into multiple hogel views.
  • a single graphics processing unit may be used per rendering node to generate the multiple hogel views that may be assigned to that rendering node.
  • the rendering node may be configured to receive 3D data/commands that are generated by a 3D application executing on a work station, for example. That is, the 3D data/commands may be generated by the application for use by typical graphics processing units configured to generate views for displaying on typical 2D displays.
  • the 3D data/commands may be graphics commands from graphics languages such as OpenGL commands, DirectX commands, etc.
  • each node may be configured to render multiple hogel views using the received 3D data/commands.
  • the graphics processing unit may be utilized serially to generate the multiple hogel views assigned to that rendering node.
  • the rendering may be performed one set at a time, such as one frame at a time.
  • each of the rendering nodes may store the incoming 3D data/commands in a buffer.
  • the stored 3D data/commands may be retrieved and “replayed” in order for the graphics processing unit in the rendering node to serially render multiple hogel views.
  • part of the rendering process or part of setting up the rendering process may be performed prior to the rendering of the hogel views.
  • certain rendering resources may be created and retained for use later during the renderings.
  • the creation and retaining of these resources may be performed for increased speed or quality.
  • certain portions of scenes may be rendered once and those scenes may be added as required to the rendering of the hogels to follow.
  • textures that may be used in the rendering of multiple hogels may be loaded in the graphics processing unit and then recalled later during the hogel rendering as required.
  • retained resources are created, retained, and used later may include the use of display lists, vertex buffer objects, etc.
  • multiple nodes may be used to perform rendering in parallel. That is, each node may perform rendering serally using a single graphics processing unit within the node and multiple nodes may in addition perform rendering in parallel to each other.
  • a group of hogels to be rendered may be divided into sets and each set may be assigned to one of the multiple nodes. Each node may then serially render the hogels assigned to that node.
  • FIG. 1 is a block diagram illustrating a system for serially rendering 3D data to hogel data, in accordance with some embodiments.
  • 3D data source 110 is configured to provide and/or generate 3D data and/or commands.
  • the 3D data source 110 may provide computer graphics 3D data/commands in specific graphics languages such as OpenGL and DirectX.
  • other types of 3D data may be provided and/or generated by 3D data source 110 .
  • the 3D data received may be substantially similar to what a typical 3D application may generate. That is, the 3D data/commands received may be substantially the same as the 3D data/commands that the application may send to a graphics processing unit for rendering 2D views for displaying on a 2D display.
  • rendering node 115 may be configured to receive the 3D data/commands and to use the data to render multiple hogel views.
  • rendering node 115 may comprise a single graphics processing unit such as graphics processing unit 120 , which is coupled to one or more memory units 125 .
  • Rendering node 115 may also comprise additional processors and memory units and other supporting units.
  • the received 3D data stream may be buffered in memory units 125 .
  • the 3D data may be rendered/processed one frame at a time.
  • the 3D data may be retrieved from the buffer and “replayed” by graphics processing unit 120 for each hogel view to be rendered.
  • graphics processing unit 120 receives each 3D data stream in a process similar to receiving the 3D data stream from 3D data source 110 .
  • part of the rendering process or part of setting up the rendering process may be performed prior to the rendering of the hogel views.
  • certain rendering resources may be created and retained for use later during the renderings.
  • the creation and retaining of these resources may be performed for increased speed or quality.
  • certain portions of scenes may be rendered once and those scenes may be added as required to the rendering of the hogels to follow.
  • textures that may be used in the rendering of multiple hogels may be loaded in the graphics processing unit and then recalled later during the hogel rendering as required.
  • retained resources are created, retained, and used later may include the use of display lists, vertex buffer objects, etc.
  • FIG. 2 is a block diagram illustrating a system for serially and/or in parallel rendering 3D data to hogel data, in accordance with some embodiments.
  • 3D data source 210 is configured to provide and/or generate 3D data and/or commands.
  • the 3D data source 210 may provide computer graphics 3D data/commands in specific graphics languages such as OpenGL and DirectX.
  • other types of 3D data may be provided and/or generated by 3D data source 210 .
  • the 3D data received may be substantially similar to what a typical 3D application may generate. That is, the 3D data/commands received may be substantially the same as the 3D data/commands that the application may send to a graphics processing unit for rendering 2D views for displaying on a 2D display.
  • group of rendering nodes 215 comprises multiple rendering nodes such as rendering nodes 1-N.
  • Each of the rendering nodes may be configured to receive the 3D data/commands and to use the data to render multiple hogel views.
  • each rendering node may comprise a single graphics processing unit and one or more memory units.
  • the received 3D data stream may be distributed to all the rendering nodes and may be buffered in memory units of each node.
  • the 3D data may be rendered/processed one frame at a time. In order to serially render a different hogel view within each rendering node, the 3D data may be retrieved from the buffer of each node and replayed by each of the graphics processing units for each different hogel view to be rendered.
  • hogel view rendering may proceed in series within each of the rendering nodes while hogel views are being rendered in parallel across the rendering nodes.
  • FIG. 3 is a block diagram illustrating a system for synchronously distributing 3D data to one or more rendering nodes, in accordance with some embodiments.
  • 3D data source 310 is configured to provide and/or generate 3D data and/or commands.
  • the 3D data source 310 may provide computer graphics 3D data/commands in specific graphics language formats such as in the OpenGL or DirectX graphics language.
  • other types of 3D may be provided and/or generated by 3D data source as described, for example, above.
  • Distribution and synchronization service 315 is configured to receive the 3D data/commands and to distribute the 3D data/commands to one or more rendering nodes 320 .
  • the distribution and synchronization service 315 is configured to provide an interface between 3D data source 310 and one or more rendering nodes 320 .
  • Distribution and synchronization service 315 may be, for example, configured to synchronize the data transfer and processing between one or more rendering nodes 320 and 3D data source 310 .
  • distribution and synchronization service 315 may comprise one or more processors 325 and one or more memory units 330 coupled to one or more processors 325 .
  • one or more processors 325 and one or more memory units 330 are configured to implement the functionality of distribution and synchronization service 315 .
  • one or more processors 324 and one or more memory units 330 may be configured to implement the functionality of the whole system, including the functionality of one or more rendering nodes 320 .
  • one or more rendering nodes 320 may be configured to receive a subset of the 3D data from distribution and synchronization service 315 and to render the subset of the 3D data into hogel data.
  • one or more rendering nodes 320 may include one or more GPUs and other graphics units that are configured to render the 3D data into the multiple 2D views of the hogel data.
  • the GPUs may be used in parallel and/or in series to accomplish the rendering of each subset of the 3D data. First, portions of each subset of hogel data may be assigned to each GPU. Upon completion of the first portions of hogel data, second portions of hogel data may be assigned to each GPU, etc.
  • each node may buffer the 3D data stream locally in order to “replay” the 3D data stream each time a graphics processing unit requires the stream for rendering.
  • one or more rendering nodes 320 may be each configured to convert multiple types of 3D data into a subset of the hogel data.
  • each rendering node when each rendering node completes rendering the subset of hogel data assigned to that rendering node, each rendering node is configured to issue a rendering complete or a ready command to indicate the completion.
  • the distribution and synchronization service 315 may be configured to receive the rendering complete commands issued by each of the rendering nodes, and in response, distribution and synchronization service 315 may be configured to issue an all rendering complete command to the rendering nodes.
  • the rendering nodes may, for example, wait for such a command before outputting/forwarding the rendered hogel data substantially simultaneously to a hogel light modulator or other device.
  • distribution and synchronization service 315 may also be configured to forward the all rendering complete command to the 3D data source in order to enable 3D data source 310 to send additional 3D data/commands (corresponding to the next frame, for example) to distribution and synchronization service 315 .
  • one or more rendering nodes 320 may also be configured to issue forwarding/output complete commands to distribution and synchronization service 315 in response to the rendering nodes completing the outputting/forwarding of rendered hogel data to another device, such as a hogel light modulator, for example.
  • distribution and synchronization service 315 may be configured to receive the forwarding complete commands from the rendering nodes and to issue an all forwarding complete command to the 3D data source 310 in response to receiving forwarding complete commands from all the rendering nodes.
  • 3D data source 310 may be configured to send additional 3D data to distribution and synchronization service 315 in response to receiving the all forwarding complete command from the distribution and synchronization service.
  • 3D data source 310 may send additional 3D data (such as the next frame of 3D data, for example) in response to either receiving the all rendering complete command or the all outputting/forwarding complete command.
  • FIG. 4 is a flow diagram illustrating a method for serially rendering 3D data to hogel data, in accordance with some embodiments. It should be noted that, in some embodiments, the methods described here may be performed by the system described in FIG. 1 though FIG. 3 .
  • a set of 3D data is received at a node.
  • the node may comprise a single graphics processing unit configured to render multiple hogel views using the 3D data.
  • the received 3D data may be data generated by 3D application executing on a work station.
  • At block 415 at least a subset of the received 3D data may be stored at the node, and at block 420 , the graphics processing unit renders a first hogel view using the subset of the 3D data.
  • a second hogel view is rendered using the subset of 3D data.
  • the rendering of the second hogel view is performed by the graphics processing unit substantially in series to the rendering of the first hogel view by the graphics processing unit.
  • FIG. 5 is a flow diagram illustrating a method for rendering serially and/or in parallel 3D data to hogel data, in accordance with some embodiments. It should be noted that, in some embodiments, the methods described here may be performed by the system described in FIG. 1 though FIG. 3 .
  • Processing begins at 500 where, at block 510 , a set of 3D data is received at a first node and at a second node.
  • the first node comprises a single graphics processing unit and the second node comprises a single graphics processing unit.
  • both nodes may be configured to convert the received 3D data into multiple hogel views.
  • At block 515 at least a subset of the set of 3D data is stored at the first node and at the second node in respective buffers.
  • a first hogel view is rendered from the subset of the 3D data using the graphics processing unit of the first rendering node
  • at block 525 at least second hogel view is rendered from the subset of 3D data also using the graphics processing unit of the first rendering node.
  • the rendering of the second hogel view is performed substantially in series to the rendering of the first hogel view.
  • a third hogel view may be rendered from the subset of 3D data using the graphics processing unit in the second rendering node.
  • the rendering may be performed substantially in parallel to the rendering at the first node.
  • At block 535 at least a fourth hogel view is rendered from the subset of 3D data using the second graphics processing unit.
  • the rendering of the fourth hogel view is performed substantially in series to the rendering of the first hogel view, and the rendering is performed substantially in parallel to the rendering at the first node.

Abstract

Methods and systems for rendering hogels, including receiving a set of 3D data at a node, the node comprising a graphics processing unit, storing at least a subset of the set of 3D data in a buffer, rendering a first hogel view from the subset of 3D data using the graphics processing unit, and rendering a second hogel view by accessing the stored subset of 3D data using the graphics processing unit, where the rendering of the second hogel view is performed substantially in series to the rendering of the first hogel view.

Description

    I. PRIORITY CLAIM
  • This application is a continuation of and claims priority from:
  • U.S. patent application Ser. No. 12,546,049, filed 24 Aug. 2009, titled “Converting 3D Data to Hogel Data” and naming Wesley A. Holler, et. al, as inventor(s), which in-turns claims priority from
  • U.S. Provisional Application No. 61/108,549, filed 26 Oct. 2008, titled “Systems and Methods for Converting 3D Data to Hogel Data” and naming Michael E. Weiblen, et. al, as inventor(s).
  • The above-referenced patents and/or patent applications are hereby incorporated by reference herein in their entirety.
  • II. GOVERNMENT CONTRACT STATEMENT
  • The U.S. Government has a paid-up license in this invention and the right in limited circumstances to require the patent owner to license others on reasonable terms as provided for by the terms of contract No. W91CRB-09-C-0031 awarded by RDECOM.
  • III. BACKGROUND
  • The invention relates generally to the field of rendering hogels and particularly to the field of converting 3D data to hogel data.
  • IV. SUMMARY
  • In one respect, disclosed is a method for rendering hogels, the method comprising receiving a set of 3D data at a node, the node comprising a graphics processing unit, storing at least a subset of the set of 3D data in a buffer, rendering a first hogel view from the subset of 3D data using the graphics processing unit, and rendering a second hogel view by accessing the stored subset of 3D data using the graphics processing unit, where the rendering of the second hogel view is performed substantially in series to the rendering of the first hogel view.
  • In another respect, disclosed is a system for rendering hogels, the system comprising one or more processors, and one or more memory units coupled to the processor, the system being configured to receive a set of 3D data at a node, the node comprising a graphics processing unit, store at least a subset of the set of 3D data in a buffer, render a first hogel view from the subset of 3D data using the graphics processing unit, and render a second hogel view by accessing the stored subset of 3D data using the graphics processing unit, where the rendering of the second hogel view is performed substantially in series to the rendering of the first hogel view.
  • In yet another respect, disclosed is a computer program product stored on a computer operable medium, the computer program product comprising software code being effective to receive a set of 3D data at a node, the node comprising a graphics processing unit, store at least a subset of the set of 3D data in a buffer, render a first hogel view from the subset of 3D data using the graphics processing unit, and render a second hogel view by accessing the stored subset of 3D data using the graphics processing unit, where the rendering of the second hogel view is performed substantially in series to the rendering of the first hogel view.
  • Numerous additional embodiments are also possible. In one or more various aspects, related articles, systems, and devices include but are not limited to circuitry, programming, electro-mechanical devices, or optical devices for effecting the herein referenced method aspects; the circuitry, programming, electro-mechanical devices, or optical devices can be virtually any combination of hardware, software, and firmware configured to effect the herein referenced method aspects depending upon the design choices of the system designer skilled in the art.
  • The foregoing is a summary and thus contains, by necessity, simplifications, generalizations and omissions of detail; consequently, those skilled in the art will appreciate that the summary is illustrative only and is not intended to be in any way limiting. Other aspects, features, and advantages of the devices, processes, or other subject matter described herein will become apparent in the teachings set forth herein.
  • In addition to the foregoing, various other method, device, and system aspects are set forth and described in the teachings such as the text (e.g., claims or detailed description) or drawings of the present disclosure.
  • V. BRIEF DESCRIPTION OF THE DRAWINGS
  • Other aspects and advantages of the invention may become apparent upon reading the detailed description and upon reference to the accompanying drawings.
  • FIG. 1 is a block diagram illustrating a system for serially rendering 3D data to hogel data, in accordance with some embodiments.
  • FIG. 2 is a block diagram illustrating a system for serially and/or in parallel rendering 3D data to hogel data, in accordance with some embodiments.
  • FIG. 3 is a block diagram illustrating a system for synchronously distributing 3D data to one or more rendering nodes, in accordance with some embodiments.
  • FIG. 4 is a flow diagram illustrating a method for serially rendering 3D data to hogel data, in accordance with some embodiments.
  • FIG. 5 is a flow diagram illustrating a method for rendering serially and/or in parallel 3D data to hogel data, in accordance with some embodiments.
  • Brief description for the additional figures is provided in the detailed description section.
  • While the invention is subject to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and the accompanying detailed description. It should be understood, however, that the drawings and detailed description are not intended to limit the invention to the particular embodiments. This disclosure is instead intended to cover all modifications, equivalents, and alternatives falling within the scope of the present invention as defined by the appended claims.
  • VI. DETAILED DESCRIPTION
  • Certain terms are used throughout the following description and claims to refer to particular system components and configurations. As one skilled in the art will appreciate, companies may refer to a component by different names. This document does not intend to distinguish between components that differ in name but not function. In the following discussion and in the claims, the terms “including” and “comprising” are used in an open-ended fashion, and thus should be interpreted to mean “including, but not limited to . . . ”. Also, the terms “couple,” “couples,” “coupled,” or “coupleable” are intended to mean either an indirect or direct electrical or wireless connection. Thus, if a first device couples to a second device, that connection may be through a direct electrical, optical, wireless connection, etc. or through an indirect electrical, optical, wireless connection, etc. by means of other devices and connections.
  • One or more embodiments of the invention are described below. It should be noted that these and any other embodiments are exemplary and are intended to be illustrative of the invention rather than limiting. While the invention is widely applicable to different types of systems, it is impossible to include all of the possible embodiments and contexts of the invention in this disclosure. Upon reading this disclosure, many alternative embodiments of the present invention will be apparent to persons of ordinary skill in the art. Other embodiments may be utilized, and other changes may be made, without departing from the spirit or scope of the subject matter presented here.
  • In some embodiments, disclosed are systems and methods for rendering 3D data into hogel data. In some embodiments, a node may be configured to receive 3D data/commands and to render the data into multiple hogel views. In some embodiments, a single graphics processing unit may be used per rendering node to generate the multiple hogel views that may be assigned to that rendering node.
  • In some embodiments, the rendering node may be configured to receive 3D data/commands that are generated by a 3D application executing on a work station, for example. That is, the 3D data/commands may be generated by the application for use by typical graphics processing units configured to generate views for displaying on typical 2D displays. The 3D data/commands may be graphics commands from graphics languages such as OpenGL commands, DirectX commands, etc.
  • In some embodiments, each node may be configured to render multiple hogel views using the received 3D data/commands. In embodiments where a single graphics processing unit is used per rendering node, the graphics processing unit may be utilized serially to generate the multiple hogel views assigned to that rendering node. In some embodiments, the rendering may be performed one set at a time, such as one frame at a time.
  • In some embodiments, each of the rendering nodes may store the incoming 3D data/commands in a buffer. In some embodiments, the stored 3D data/commands may be retrieved and “replayed” in order for the graphics processing unit in the rendering node to serially render multiple hogel views.
  • In some embodiments, part of the rendering process or part of setting up the rendering process may be performed prior to the rendering of the hogel views. For example, certain rendering resources may be created and retained for use later during the renderings. In some embodiments, the creation and retaining of these resources may be performed for increased speed or quality. For example, certain portions of scenes may be rendered once and those scenes may be added as required to the rendering of the hogels to follow. In other examples, textures that may be used in the rendering of multiple hogels may be loaded in the graphics processing unit and then recalled later during the hogel rendering as required. Other examples where retained resources are created, retained, and used later may include the use of display lists, vertex buffer objects, etc.
  • In some embodiments, multiple nodes may be used to perform rendering in parallel. That is, each node may perform rendering serally using a single graphics processing unit within the node and multiple nodes may in addition perform rendering in parallel to each other. A group of hogels to be rendered may be divided into sets and each set may be assigned to one of the multiple nodes. Each node may then serially render the hogels assigned to that node.
  • For additional discussion on hogels and hogel light modulators, please see U.S. patent application Ser. No. 12/258,438, filed 26 Oct. 2008, entitled “Systems and Methods for Calibrating a Hogel Display” and naming Mark E. Lucente as inventor. The above-referenced patent application is hereby incorporated by reference herein in its entirety.
  • FIG. 1 is a block diagram illustrating a system for serially rendering 3D data to hogel data, in accordance with some embodiments.
  • 3D data source 110 is configured to provide and/or generate 3D data and/or commands. In some embodiments, the 3D data source 110 may provide computer graphics 3D data/commands in specific graphics languages such as OpenGL and DirectX. In other embodiments, other types of 3D data may be provided and/or generated by 3D data source 110. In some embodiments, the 3D data received may be substantially similar to what a typical 3D application may generate. That is, the 3D data/commands received may be substantially the same as the 3D data/commands that the application may send to a graphics processing unit for rendering 2D views for displaying on a 2D display.
  • In some embodiments, rendering node 115 may be configured to receive the 3D data/commands and to use the data to render multiple hogel views. In some embodiments, rendering node 115 may comprise a single graphics processing unit such as graphics processing unit 120, which is coupled to one or more memory units 125. Rendering node 115 may also comprise additional processors and memory units and other supporting units.
  • In some embodiments, the received 3D data stream may be buffered in memory units 125. In some embodiments, the 3D data may be rendered/processed one frame at a time. In order to serially render each hogel view using the single graphics processing unit 120, the 3D data may be retrieved from the buffer and “replayed” by graphics processing unit 120 for each hogel view to be rendered. In some embodiments, graphics processing unit 120 receives each 3D data stream in a process similar to receiving the 3D data stream from 3D data source 110.
  • In some embodiments, part of the rendering process or part of setting up the rendering process may be performed prior to the rendering of the hogel views. For example, certain rendering resources may be created and retained for use later during the renderings. In some embodiments, the creation and retaining of these resources may be performed for increased speed or quality. For example, certain portions of scenes may be rendered once and those scenes may be added as required to the rendering of the hogels to follow. In other examples, textures that may be used in the rendering of multiple hogels may be loaded in the graphics processing unit and then recalled later during the hogel rendering as required. Other examples where retained resources are created, retained, and used later may include the use of display lists, vertex buffer objects, etc.
  • FIG. 2 is a block diagram illustrating a system for serially and/or in parallel rendering 3D data to hogel data, in accordance with some embodiments.
  • 3D data source 210 is configured to provide and/or generate 3D data and/or commands. In some embodiments, the 3D data source 210 may provide computer graphics 3D data/commands in specific graphics languages such as OpenGL and DirectX. In other embodiments, other types of 3D data may be provided and/or generated by 3D data source 210. In some embodiments, the 3D data received may be substantially similar to what a typical 3D application may generate. That is, the 3D data/commands received may be substantially the same as the 3D data/commands that the application may send to a graphics processing unit for rendering 2D views for displaying on a 2D display.
  • In some embodiments, group of rendering nodes 215 comprises multiple rendering nodes such as rendering nodes 1-N. Each of the rendering nodes may be configured to receive the 3D data/commands and to use the data to render multiple hogel views. In some embodiments, each rendering node may comprise a single graphics processing unit and one or more memory units. In some embodiments, the received 3D data stream may be distributed to all the rendering nodes and may be buffered in memory units of each node. In some embodiments, the 3D data may be rendered/processed one frame at a time. In order to serially render a different hogel view within each rendering node, the 3D data may be retrieved from the buffer of each node and replayed by each of the graphics processing units for each different hogel view to be rendered.
  • In some embodiments, hogel view rendering may proceed in series within each of the rendering nodes while hogel views are being rendered in parallel across the rendering nodes.
  • FIG. 3 is a block diagram illustrating a system for synchronously distributing 3D data to one or more rendering nodes, in accordance with some embodiments.
  • 3D data source 310 is configured to provide and/or generate 3D data and/or commands. In some embodiments, the 3D data source 310 may provide computer graphics 3D data/commands in specific graphics language formats such as in the OpenGL or DirectX graphics language. In other embodiments, other types of 3D may be provided and/or generated by 3D data source as described, for example, above.
  • Distribution and synchronization service 315 is configured to receive the 3D data/commands and to distribute the 3D data/commands to one or more rendering nodes 320. In some embodiments, the distribution and synchronization service 315 is configured to provide an interface between 3D data source 310 and one or more rendering nodes 320. Distribution and synchronization service 315 may be, for example, configured to synchronize the data transfer and processing between one or more rendering nodes 320 and 3D data source 310.
  • In some embodiments, distribution and synchronization service 315 may comprise one or more processors 325 and one or more memory units 330 coupled to one or more processors 325. In some embodiments, one or more processors 325 and one or more memory units 330 are configured to implement the functionality of distribution and synchronization service 315. In other embodiments, one or more processors 324 and one or more memory units 330 may be configured to implement the functionality of the whole system, including the functionality of one or more rendering nodes 320.
  • In some embodiments one or more rendering nodes 320 may be configured to receive a subset of the 3D data from distribution and synchronization service 315 and to render the subset of the 3D data into hogel data. In embodiments where the 3D data is computer 3D graphics data, one or more rendering nodes 320 may include one or more GPUs and other graphics units that are configured to render the 3D data into the multiple 2D views of the hogel data. The GPUs may be used in parallel and/or in series to accomplish the rendering of each subset of the 3D data. First, portions of each subset of hogel data may be assigned to each GPU. Upon completion of the first portions of hogel data, second portions of hogel data may be assigned to each GPU, etc. until the subset of hogel data assigned to the rendering node has been completed. In some embodiments, each node may buffer the 3D data stream locally in order to “replay” the 3D data stream each time a graphics processing unit requires the stream for rendering. Generally, one or more rendering nodes 320 may be each configured to convert multiple types of 3D data into a subset of the hogel data.
  • In some embodiments, when each rendering node completes rendering the subset of hogel data assigned to that rendering node, each rendering node is configured to issue a rendering complete or a ready command to indicate the completion. In some embodiments, the distribution and synchronization service 315 may be configured to receive the rendering complete commands issued by each of the rendering nodes, and in response, distribution and synchronization service 315 may be configured to issue an all rendering complete command to the rendering nodes. In some embodiments, the rendering nodes may, for example, wait for such a command before outputting/forwarding the rendered hogel data substantially simultaneously to a hogel light modulator or other device.
  • In some embodiments, distribution and synchronization service 315 may also be configured to forward the all rendering complete command to the 3D data source in order to enable 3D data source 310 to send additional 3D data/commands (corresponding to the next frame, for example) to distribution and synchronization service 315.
  • In some embodiments, one or more rendering nodes 320 may also be configured to issue forwarding/output complete commands to distribution and synchronization service 315 in response to the rendering nodes completing the outputting/forwarding of rendered hogel data to another device, such as a hogel light modulator, for example. In some embodiments, distribution and synchronization service 315 may be configured to receive the forwarding complete commands from the rendering nodes and to issue an all forwarding complete command to the 3D data source 310 in response to receiving forwarding complete commands from all the rendering nodes. In some embodiments, 3D data source 310 may be configured to send additional 3D data to distribution and synchronization service 315 in response to receiving the all forwarding complete command from the distribution and synchronization service. In some embodiments, 3D data source 310 may send additional 3D data (such as the next frame of 3D data, for example) in response to either receiving the all rendering complete command or the all outputting/forwarding complete command.
  • FIG. 4 is a flow diagram illustrating a method for serially rendering 3D data to hogel data, in accordance with some embodiments. It should be noted that, in some embodiments, the methods described here may be performed by the system described in FIG. 1 though FIG. 3.
  • Processing begins at 400 where, at block 410, a set of 3D data is received at a node. In some embodiments, the node may comprise a single graphics processing unit configured to render multiple hogel views using the 3D data. In some embodiments, the received 3D data may be data generated by 3D application executing on a work station.
  • At block 415, at least a subset of the received 3D data may be stored at the node, and at block 420, the graphics processing unit renders a first hogel view using the subset of the 3D data.
  • At block 425, a second hogel view is rendered using the subset of 3D data. The rendering of the second hogel view is performed by the graphics processing unit substantially in series to the rendering of the first hogel view by the graphics processing unit.
  • Processing subsequently ends at 499.
  • FIG. 5 is a flow diagram illustrating a method for rendering serially and/or in parallel 3D data to hogel data, in accordance with some embodiments. It should be noted that, in some embodiments, the methods described here may be performed by the system described in FIG. 1 though FIG. 3.
  • Processing begins at 500 where, at block 510, a set of 3D data is received at a first node and at a second node. In some embodiments, the first node comprises a single graphics processing unit and the second node comprises a single graphics processing unit. In some embodiments, both nodes may be configured to convert the received 3D data into multiple hogel views.
  • At block 515, at least a subset of the set of 3D data is stored at the first node and at the second node in respective buffers.
  • At block 520, a first hogel view is rendered from the subset of the 3D data using the graphics processing unit of the first rendering node, and at block 525, at least second hogel view is rendered from the subset of 3D data also using the graphics processing unit of the first rendering node. The rendering of the second hogel view is performed substantially in series to the rendering of the first hogel view.
  • At block 530, a third hogel view may be rendered from the subset of 3D data using the graphics processing unit in the second rendering node. In some embodiments, the rendering may be performed substantially in parallel to the rendering at the first node.
  • At block 535, at least a fourth hogel view is rendered from the subset of 3D data using the second graphics processing unit. In some embodiments, the rendering of the fourth hogel view is performed substantially in series to the rendering of the first hogel view, and the rendering is performed substantially in parallel to the rendering at the first node.
  • Those of skill will appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Those of skill in the art may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
  • The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
  • The benefits and advantages that may be provided by the present invention have been described above with regard to specific embodiments. These benefits and advantages, and any elements or limitations that may cause them to occur or to become more pronounced are not to be construed as critical, required, or essential features of any or all of the claims. As used herein, the terms “comprises,” “comprising,” or any other variations thereof, are intended to be interpreted as non-exclusively including the elements or limitations which follow those terms. Accordingly, a system, method, or other embodiment that comprises a set of elements is not limited to only those elements, and may include other elements not expressly listed or inherent to the claimed embodiment.
  • While the present invention has been described with respect to a limited number of embodiments, those skilled in the art will appreciate numerous modifications and variations therefrom. It is intended that the appended claims cover all such modifications and variations as fall within the true spirit and scope of this present invention.

Claims (12)

1. A method for rendering hogels, the method comprising:
receiving a set of 3D data at a node, the node comprising a graphics processing unit;
storing at least a subset of the set of 3D data in a buffer;
rendering a first hogel view from the subset of 3D data using the graphics processing unit; and
rendering a second hogel view by accessing the stored subset of 3D data using the graphics processing unit, where the rendering of the second hogel view is performed substantially in series to the rendering of the first hogel view.
2. The method of claim 1, further comprising:
receiving the set of 3D data at another node, the other node comprising another graphics processing unit, the other graphics processing unit being configured to render substantially in parallel to the graphics processing unit;
storing at least the subset of the set of 3D data in another buffer; and
rendering another hogel view from the subset of 3D data using the other graphics processing unit.
3. The method of claim 1, where the 3D data comprises 3D graphics data and commands generated by a 3D application for a graphics processing unit generating 2D views for a 2D displays.
4. The method of claim 2, further comprising:
creating one or more rendering resources; and
using the one or more rendering resources in the rendering of subsequent hogel views.
5. A system for rendering hogels, the system comprising:
one or more processors; and
one or more memory units coupled to the processor,
the system being configured to:
receive a set of 3D data at a node, the node comprising a graphics processing unit;
store at least a subset of the set of 3D data in a buffer;
render a first hogel view from the subset of 3D data using the graphics processing unit; and
render a second hogel view by accessing the stored subset of 3D data using the graphics processing unit, where the rendering of the second hogel view is performed substantially in series to the rendering of the first hogel view.
6. The system of claim 5, the system being further configured to:
receive the set of 3D data at another node, the other node comprising another graphics processing unit, the other graphics processing unit being configured to render substantially in parallel to the graphics processing unit;
store at least the subset of the set of 3D data in another buffer; and
render another hogel view from the subset of 3D data using the other graphics processing unit.
7. The system of claim 5, where the 3D data comprises 3D graphics data and commands generated by a 3D application for a graphics processing unit generating 2D views for a 2D displays.
8. The system of claim 7, the system being further configured to:
create one or more rendering resources; and use the one or more rendering resources in the rendering of subsequent hogel views.
9. A computer program product stored on a computer operable medium, the computer program product comprising software code being effective to:
receive a set of 3D data at a node, the node comprising a graphics processing unit;
store at least a subset of the set of 3D data in a buffer;
render a first hogel view from the subset of 3D data using the graphics processing unit; and
render a second hogel view by accessing the stored subset of 3D data using the graphics processing unit, where the rendering of the second hogel view is performed substantially in series to the rendering of the first hogel view.
10. The product of claim 9, the system being further configured to:
receive the set of 3D data at another node, the other node comprising another graphics processing unit, the other graphics processing unit being configured to render substantially in parallel to the graphics processing unit;
store at least the subset of the set of 3D data in another buffer; and
render another hogel view from the subset of 3D data using the other graphics processing unit.
11. The product of claim 9, where the 3D data comprises 3D graphics data and commands generated by a 3D application for a graphics processing unit generating 2D views for a 2D displays.
12. The product of claim 10, the system being further configured to:
create one or more rendering resources; and
use the one or more rendering resources in the rendering of subsequent hogel views.
US12/606,099 2008-10-26 2009-10-26 Rendering 3D Data to Hogel Data Abandoned US20100156894A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US12/606,137 US20100156895A1 (en) 2008-10-26 2009-10-26 Processing Pre-recorded Hogel Data
US12/606,099 US20100156894A1 (en) 2008-10-26 2009-10-26 Rendering 3D Data to Hogel Data
US12/819,248 US20110012895A1 (en) 2008-10-26 2010-06-21 Processing Hogel Data

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10854908P 2008-10-26 2008-10-26
US12/546,049 US8605081B2 (en) 2008-10-26 2009-08-24 Converting 3D data to hogel data
US12/606,099 US20100156894A1 (en) 2008-10-26 2009-10-26 Rendering 3D Data to Hogel Data

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US12/546,049 Continuation US8605081B2 (en) 2008-10-26 2009-08-24 Converting 3D data to hogel data

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/606,137 Continuation US20100156895A1 (en) 2008-10-26 2009-10-26 Processing Pre-recorded Hogel Data

Publications (1)

Publication Number Publication Date
US20100156894A1 true US20100156894A1 (en) 2010-06-24

Family

ID=42120026

Family Applications (2)

Application Number Title Priority Date Filing Date
US12/546,049 Active US8605081B2 (en) 2008-10-26 2009-08-24 Converting 3D data to hogel data
US12/606,099 Abandoned US20100156894A1 (en) 2008-10-26 2009-10-26 Rendering 3D Data to Hogel Data

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US12/546,049 Active US8605081B2 (en) 2008-10-26 2009-08-24 Converting 3D data to hogel data

Country Status (2)

Country Link
US (2) US8605081B2 (en)
WO (3) WO2010048640A2 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015106031A2 (en) 2014-01-10 2015-07-16 Ostendo Technologies, Inc. Methods for full parallax compressed light field 3d imaging systems
US10070115B2 (en) 2015-04-23 2018-09-04 Ostendo Technologies, Inc. Methods for full parallax compressed light field synthesis utilizing depth information
US20180253884A1 (en) * 2017-03-06 2018-09-06 Fovi 3D, Inc. Multi-view processing unit systems and methods
WO2018223074A1 (en) 2017-06-02 2018-12-06 Ostendo Technologies, Inc. Methods and systems for light field compression with residuals
US10310450B2 (en) 2015-04-23 2019-06-04 Ostendo Technologies, Inc. Methods and apparatus for full parallax light field display systems
US10339120B2 (en) 2013-03-15 2019-07-02 Sony Corporation Method and system for recording information about rendered assets
US10432944B2 (en) 2017-08-23 2019-10-01 Avalon Holographics Inc. Layered scene decomposition CODEC system and methods
US10448030B2 (en) 2015-11-16 2019-10-15 Ostendo Technologies, Inc. Content adaptive light field compression
US10453431B2 (en) 2016-04-28 2019-10-22 Ostendo Technologies, Inc. Integrated near-far light field display systems
US11051039B2 (en) 2017-06-02 2021-06-29 Ostendo Technologies, Inc. Methods for full parallax light field compression
US11172222B2 (en) 2018-06-26 2021-11-09 Ostendo Technologies, Inc. Random access in encoded full parallax light field images
US11412233B2 (en) 2018-04-12 2022-08-09 Ostendo Technologies, Inc. Methods for MR-DIBR disparity map merging and disparity threshold determination

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8745173B1 (en) * 2011-12-30 2014-06-03 hopTo Inc. Client computing system for and method of receiving cross-platform remote access to 3D graphics applications
WO2009111325A2 (en) * 2008-02-29 2009-09-11 The Regents Of The University Of California Scalable, cross-platform method for multi-tile display systems
JP5539051B2 (en) * 2010-06-14 2014-07-02 キヤノン株式会社 Rendering processor
US8766990B1 (en) 2011-12-30 2014-07-01 hopTo Inc. Server computing system for and method of providing cross-platform remote access to 3D graphics applications
US8838749B1 (en) 2011-12-30 2014-09-16 hopTo Inc. Cloud based client computing system for and method of receiving cross-platform remote access to 3D graphics applications
US8769052B1 (en) 2011-12-30 2014-07-01 hopTo Inc. Cloud-based server computing system for and method of providing cross-platform remote access to 3D graphics applications
US9589000B2 (en) * 2012-08-30 2017-03-07 Atheer, Inc. Method and apparatus for content association and history tracking in virtual and augmented reality

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020015055A1 (en) * 2000-07-18 2002-02-07 Silicon Graphics, Inc. Method and system for presenting three-dimensional computer graphics images using multiple graphics processing units
US20020030694A1 (en) * 2000-03-23 2002-03-14 Hitoshi Ebihara Image processing apparatus and method
US20040085310A1 (en) * 2002-11-04 2004-05-06 Snuffer John T. System and method of extracting 3-D data generated for 2-D display applications for use in 3-D volumetric displays
US6859293B2 (en) * 2002-10-22 2005-02-22 Zebra Imaging, Inc. Active digital hologram display
US20060022973A1 (en) * 2004-07-27 2006-02-02 Alcorn Byron A Systems and methods for generating a composite video signal from a plurality of independent video signals
US7190496B2 (en) * 2003-07-24 2007-03-13 Zebra Imaging, Inc. Enhanced environment visualization using holographic stereograms
US20080259419A1 (en) * 2006-12-01 2008-10-23 F.Poszat Hu, Llc Computer generated hologram

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6330088B1 (en) 1998-02-27 2001-12-11 Zebra Imaging, Inc. Method and apparatus for recording one-step, full-color, full-parallax, holographic stereograms
US6366370B1 (en) 1998-12-30 2002-04-02 Zebra Imaging, Inc. Rendering methods for full parallax autostereoscopic displays
US6549308B1 (en) 2000-01-11 2003-04-15 Zebra Imaging, Inc. Unibiased light field models for rendering and holography
US6900904B1 (en) 2000-02-04 2005-05-31 Zebra Imaging, Inc. Distributed system for producing holographic stereograms on-demand from various types of source material
US6631016B1 (en) * 2001-07-18 2003-10-07 Zebra Imaging, Inc. Full-parallax holographic stereograms on curved substrates
US7477252B2 (en) * 2004-04-05 2009-01-13 Actuality Systems, Inc. Processing three dimensional data for spatial three dimensional displays
WO2006014480A2 (en) * 2004-07-08 2006-02-09 Actuality Systems, Inc. Architecture for rendering graphics on output devices over diverse connections

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020030694A1 (en) * 2000-03-23 2002-03-14 Hitoshi Ebihara Image processing apparatus and method
US20020015055A1 (en) * 2000-07-18 2002-02-07 Silicon Graphics, Inc. Method and system for presenting three-dimensional computer graphics images using multiple graphics processing units
US6859293B2 (en) * 2002-10-22 2005-02-22 Zebra Imaging, Inc. Active digital hologram display
US20040085310A1 (en) * 2002-11-04 2004-05-06 Snuffer John T. System and method of extracting 3-D data generated for 2-D display applications for use in 3-D volumetric displays
US7190496B2 (en) * 2003-07-24 2007-03-13 Zebra Imaging, Inc. Enhanced environment visualization using holographic stereograms
US20060022973A1 (en) * 2004-07-27 2006-02-02 Alcorn Byron A Systems and methods for generating a composite video signal from a plurality of independent video signals
US20080259419A1 (en) * 2006-12-01 2008-10-23 F.Poszat Hu, Llc Computer generated hologram

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10339120B2 (en) 2013-03-15 2019-07-02 Sony Corporation Method and system for recording information about rendered assets
TWI807286B (en) * 2014-01-10 2023-07-01 美商傲思丹度科技公司 Methods for full parallax compressed light field 3d imaging systems
TWI724626B (en) * 2014-01-10 2021-04-11 美商傲思丹度科技公司 Methods for full parallax compressed light field 3d imaging systems
WO2015106031A2 (en) 2014-01-10 2015-07-16 Ostendo Technologies, Inc. Methods for full parallax compressed light field 3d imaging systems
US10244223B2 (en) 2014-01-10 2019-03-26 Ostendo Technologies, Inc. Methods for full parallax compressed light field 3D imaging systems
US10528004B2 (en) 2015-04-23 2020-01-07 Ostendo Technologies, Inc. Methods and apparatus for full parallax light field display systems
US10070115B2 (en) 2015-04-23 2018-09-04 Ostendo Technologies, Inc. Methods for full parallax compressed light field synthesis utilizing depth information
US10310450B2 (en) 2015-04-23 2019-06-04 Ostendo Technologies, Inc. Methods and apparatus for full parallax light field display systems
US10448030B2 (en) 2015-11-16 2019-10-15 Ostendo Technologies, Inc. Content adaptive light field compression
US11019347B2 (en) 2015-11-16 2021-05-25 Ostendo Technologies, Inc. Content adaptive light field compression
US11145276B2 (en) 2016-04-28 2021-10-12 Ostendo Technologies, Inc. Integrated near-far light field display systems
US10453431B2 (en) 2016-04-28 2019-10-22 Ostendo Technologies, Inc. Integrated near-far light field display systems
US10573056B2 (en) * 2017-03-06 2020-02-25 3D Patents, Llc Multi-view processing unit systems and methods
US10937223B2 (en) 2017-03-06 2021-03-02 3D Patents, Llc Multi-view processing unit systems and methods
US11423599B2 (en) 2017-03-06 2022-08-23 3D Patents, Llc Multi-view processing unit systems and methods
US20180253884A1 (en) * 2017-03-06 2018-09-06 Fovi 3D, Inc. Multi-view processing unit systems and methods
WO2018223074A1 (en) 2017-06-02 2018-12-06 Ostendo Technologies, Inc. Methods and systems for light field compression with residuals
US11051039B2 (en) 2017-06-02 2021-06-29 Ostendo Technologies, Inc. Methods for full parallax light field compression
US11159824B1 (en) 2017-06-02 2021-10-26 Ostendo Technologies, Inc. Methods for full parallax light field compression
US10972737B2 (en) 2017-08-23 2021-04-06 Avalon Holographics Inc. Layered scene decomposition CODEC system and methods
US10432944B2 (en) 2017-08-23 2019-10-01 Avalon Holographics Inc. Layered scene decomposition CODEC system and methods
US11412233B2 (en) 2018-04-12 2022-08-09 Ostendo Technologies, Inc. Methods for MR-DIBR disparity map merging and disparity threshold determination
US11172222B2 (en) 2018-06-26 2021-11-09 Ostendo Technologies, Inc. Random access in encoded full parallax light field images

Also Published As

Publication number Publication date
WO2010048637A2 (en) 2010-04-29
WO2010048642A3 (en) 2010-08-12
US8605081B2 (en) 2013-12-10
WO2010048640A3 (en) 2010-08-12
WO2010048640A2 (en) 2010-04-29
US20100220098A1 (en) 2010-09-02
WO2010048637A3 (en) 2010-08-19
WO2010048642A2 (en) 2010-04-29

Similar Documents

Publication Publication Date Title
US20100156894A1 (en) Rendering 3D Data to Hogel Data
US20110012895A1 (en) Processing Hogel Data
US6252610B1 (en) Method and apparatus for efficiently switching state in a graphics pipeline
US10621775B2 (en) Untransformed display lists in a tile based rendering system
JP4249397B2 (en) Method and apparatus for synchronizing a graphics pipeline
US10019777B2 (en) Scalable high performance 3D graphics
EP3248171B1 (en) Virtual linebuffers for image signal processors
US6473086B1 (en) Method and apparatus for graphics processing using parallel graphics processors
CN1251155C (en) Method and apparatus fir the anti-alizasing supersampling
JPH04219859A (en) Harware distributor which distributes series-instruction-stream data to parallel processors
US6476808B1 (en) Token-based buffer system and method for a geometry pipeline in three-dimensional graphics
CN102122502B (en) Method and related device for displaying three-dimensional (3D) font
MXPA06000833A (en) System and method for network transmission of graphical data through a distributed application.
US20040207623A1 (en) Distributed rendering of interactive soft shadows
JPH05282458A (en) Plural extensible image buffers for graphics system
US20090315909A1 (en) Unified Shader Engine Filtering System
CN106339061A (en) Mobile terminal and method of run application thereof
EP1255227A1 (en) Vertices index processor
CN111667542A (en) Decompression technique for processing compressed data suitable for artificial neural networks
US8681154B1 (en) Adaptive rendering of indistinct objects
JP3090605B2 (en) Multiprocessor device
EP2297723A1 (en) Scalable and unified compute system
JP2938064B1 (en) Image generation apparatus and image generation method thereof
JP3097843B2 (en) Display control circuit
GB2227148A (en) Apparatus and method for using a test window in a graphics subsystem which incorporates hardware to perform clipping of images

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION