Manipulating shaders with object-oriented programming
AssigneeApple Inc.
InventorsThomas Goossens, Amaury Balliet, Aymeric Bard
Life of this patent
Estimating the term…
Abstract
Shader manipulation via object-oriented instructions is disclosed. In various embodiments, a processor may receive object-oriented instructions. Upon receiving the object-oriented instructions, the processor may match the object-oriented instructions to uniforms of a non-object-oriented application programming interface (API) that may interface with a graphics processing unit (GPU). Further, the processor may modify the uniforms based at least in part on the received object-oriented instructions. Additionally, the processor may implements the uniforms after modification at a determined time.
Claims23
An electronic device, comprising:
- a processor;
- a graphics processing unit (GPU);
- and
- a memory, operatively coupled to the processor, wherein the memory is configured to store instructions that when executed by the processor cause the processor to:
- receive a plurality of object-oriented instructions for modifying at least one attribute of an image from the memory;
- map properties of the object-oriented instructions to at least one Uniform of a non-object-oriented application programming interface (API) that interacts with the GPU to construct the image;
- update the at least one attribute of the image based upon modifying the at least one Uniform according to the mapped properties of the object-oriented instructions;
- and
- automatically call the object-oriented instructions based on specific time requirements for communicating with drivers that pilot the GPU when the non-object oriented API is to use information from the object-oriented instructions.
A non-transitory, computer readable medium having instructions stored thereon, wherein the instructions, when executed, cause a processor to:
- receive a plurality of object-oriented instructions to manipulate a plurality of Uniforms of a shader that runs on a graphic processing unit to construct an image;
- map properties of the object-oriented instructions to the Uniforms of the shader, wherein a non-object-oriented application programming interface (API) implements the Uniforms of the shader;
- update the image by manipulating the shader based at least in part on modifying the Uniforms of the shader according to the object-oriented instructions;
- and
- automatically call the object-oriented instructions based on specific time requirements for communicating with drivers that pilot the GPU when the non-object oriented API is to use information from the object-oriented instructions.
A method, comprising:
- receiving, using a processor, a plurality of object-oriented instructions for modifying an image;
- mapping, using the processor, the object-oriented instructions to a plurality of Uniforms of a non-object-oriented application programming interface (API) that interfaces with a graphics processing unit (GPU) to construct the image;
- modifying, using the processor, the image based upon altering the Uniforms according to the mapped object-oriented instructions;
- and
- automatically calling, using the processor, the object-oriented instructions based on specific time requirements for communicating with drivers that pilot the GPU when the non-object-oriented API is to use information from the object-oriented instructions.
A non-transitory, computer readable medium having instructions stored thereon, wherein the instructions, when executed, causes the processor to:
- receive a plurality of object-oriented instructions for modifying an image;
- map the object-oriented instructions that correspond to a plurality of Uniforms of a non-object-oriented application programming interface (API) that interfaces with a graphics processing unit (GPU) to construct the image;
- apply the object-oriented instructions at run time of the non-object-oriented API such that the Uniforms of the non-object-oriented API are altered by the object-oriented instructions to construct a modified image with the GPU;
- and
- automatically call the object-oriented instructions based on specific time requirements for communicating with drivers that pilot the GPU when the non-object-oriented API is to use information from the object-oriented instructions.
An electronic device, comprising:
- a memory;
- a display;
- and
- a processor configured to receive instructions and output a shaded image on the display at run time, wherein the instructions are adjustable via a graphical user interface (GUI), and wherein the instructions instruct the processor to:
- receive input from the GUI;
- convert the input from the GUI to properties of object-oriented instructions;
- map the object-oriented instructions to a plurality of Uniforms of a non-object-oriented application programming interface (API) that interacts with a graphics processing unit (GPU) to construct the shaded image;
- modify the shaded image by updating the Uniforms of the non-object-oriented API according to the mapped object-oriented instructions at run time;
- and
- automatically call the object-oriented instructions based on specific time requirements for communicating with drivers that pilot the GPU when the non-object-oriented API is to use information from the object-oriented instructions.
Dependencies are inferred from the claim text.