Prosecution Insights
Last updated: April 19, 2026
Application No. 18/802,655

HAIR DESIGN AND RENDERING

Non-Final OA §103§112
Filed
Aug 13, 2024
Examiner
GUO, XILIN
Art Unit
2616
Tech Center
2600 — Communications
Assignee
Roblox Corporation
OA Round
1 (Non-Final)
82%
Grant Probability
Favorable
1-2
OA Rounds
2y 5m
To Grant
99%
With Interview

Examiner Intelligence

Grants 82% — above average
82%
Career Allow Rate
374 granted / 456 resolved
+20.0% vs TC avg
Strong +17% interview lift
Without
With
+17.4%
Interview Lift
resolved cases with interview
Typical timeline
2y 5m
Avg Prosecution
18 currently pending
Career history
474
Total Applications
across all art units

Statute-Specific Performance

§101
7.6%
-32.4% vs TC avg
§103
56.3%
+16.3% vs TC avg
§102
12.8%
-27.2% vs TC avg
§112
19.0%
-21.0% vs TC avg
Black line = Tech Center average estimate • Based on career data from 456 resolved cases

Office Action

§103 §112
DETAILED ACTION Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Claim Rejections - 35 USC § 112 The following is a quotation of 35 U.S.C. 112(b): (b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention. The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph: The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention. Claims 3, 5 and 14-20 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor, or for pre-AIA the applicant regards as the invention. Dependent claim 3 depends upon independent claim 1 and recites “determining that the user device is of a second type.” However, each of them does not describe “a first type” of the user device. The issue is persons of ordinary skill in the art reading the specification is not able to understand how to determine “a second type” without determining “a first type”. Therefore, the examiner deems the claim indefinite as it fail to particularly point out and distinctly claim what Applicant regards as the invention. Accordingly, the claim is rejected under U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph. Dependent claim 5 depends upon independent claim 1 and recites “determining that the user device is of a third type.” However, each of them does not describe “a first type” and “a second type” of the user device. The issue is persons of ordinary skill in the art reading the specification is not able to understand how to determine “a third type” without determining “a first type” and “a second type”. Therefore, the examiner deems the claim indefinite as it fail to particularly point out and distinctly claim what Applicant regards as the invention. Accordingly, the claim is rejected under U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph. Dependent claim 14 depends upon independent claim 1 and recites “UV”. The term “UV” is a relative term which renders the claim indefinite. Accordingly, the claim is rejected under U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph. Independent claim 15 recites “receiving, at a user device that participates in a virtual experience, a hair model for a 3D object ...”. The term “3D” is a relative term which renders the claim indefinite. Therefore, the examiner deems the claim indefinite as it fail to particularly point out and distinctly claim what Applicant regards as the invention. Accordingly, the claim is rejected under U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph. Dependent claims 16-17 are rejected because they depend upon independent claim 15. Dependent claim 17 depends upon independent claim 15 and recites “UV”. The term “UV” is a relative term which renders the claim indefinite. Accordingly, the claim is rejected under U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph. Independent claim 18 recites “receiving, at a user device that participates in a virtual experience, a hair model for a 3D object ...”. The term “3D” is a relative term which renders the claim indefinite. Therefore, the examiner deems the claim indefinite as it fail to particularly point out and distinctly claim what Applicant regards as the invention. Accordingly, the claim is rejected under U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph. Dependent claims 19-20 are rejected because they depend upon independent claim 18. Dependent claim 20 depends upon independent claim 18 and recites “determining that the user device is of a second type.” However, each of them does not describe “a first type” of the user device. The issue is persons of ordinary skill in the art reading the specification is not able to understand how to determine “a second type” without determining “a first type”. Therefore, the examiner deems the claim indefinite as it fail to particularly point out and distinctly claim what Applicant regards as the invention. Accordingly, the claim is rejected under U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph. Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claims 1-13, 15-16 and 18-20 are rejected under 35 U.S.C. 103 as being unpatentable over Witkin et al (U.S. Patent Application Publication 2015/0325030 A1) in view of Bondich et al (U.S. Patent No. 11,030,786 B1 ). Regarding claim 1, Witkin discloses a computer-implemented method, comprising: receiving, at a user device that participates in a virtual experience (FIG. 19; paragraph [0119], computer system 1900 may be embodied as a computing device ...; paragraph [0014], techniques are provided for the interactive designing of computer-generated hair models. In one embodiment, a method for designing of computer-generated hair models may be performed by one or more computer systems. First information may be generated that is configured to display a hair style of a computer-generated hair model within one or more user interfaces associated with a simulation-assisted hair modeling environment ...; paragraph [0038], FIG. 1 is a simplified block diagram of system 100 for creating computer graphics imagery (CGI) and computer-aided animation ...), a hair model (Paragraph [0059], simulation models may include models representing hair; paragraphs [0112]-[0113], FIG. 16 is a flowchart of method 1600 for simulation-assisted hair modeling within an interactive environment ... In step 1620, information defining a hair model is received ...) for a three-dimensional (3D) object (Paragraph [0045], the one or more object modeling systems 130 may further generate model data (3D model data) for use by other elements of system 100 or that can be stored in object library 120), wherein the hair model includes a plurality of curves (Paragraph [0060], models used to represent hair generally have the common problem of being a 1-D object (e.g., a curve model) embedded in a 3-D world; paragraph [0061], FIG. 2 is an illustration of curve model 200 that may be used for creating CGI and computer-aided animation in various embodiments), hair geometry metadata associated with one or more curves of the plurality of curves (Paragraph [0064], curve model 200 may include information defining the geometric description of a curve ...), and hair simulation metadata (Paragraph [0054], the one or more object simulation systems 160 may further generate simulation data (e.g., motion and position of an object over time) for use by other elements of system 100 or that can be stored in object library 120); generating, at the user device, hair geometry for the 3D object (Paragraph [0113], a user may interact with interactive environment user 1500 to load a predefined model; paragraph [0115], one or more change to the hair model are received. A change may include a change in geometry, a change in one or more material or physical properties ...) based on the hair model (Paragraph [0113], a user may interact with interactive environment user 1500 to specify one or more predefined objects, shapes, or the like as a starting point of hair model 1540), the hair geometry metadata (Paragraph [0064], curve model 200 may include information defining the geometric); simulating, at the user device, hair for the 3D object (paragraph [0115], in step 1650, the hair model is displayed based on the one or more changes and simulation results for hair mode) based on the hair geometry (Paragraph [0115], a change may include a change in geometry), the hair simulation metadata (Paragraph [0114], design computer 110 may utilize the one or more object simulation systems 160 to obtain simulation results), and one or more physics parameters of the virtual experience (Paragraph [0115], a change in one or more material or physical properties ... under gravity or other simulated effects); and rendering the 3D object with the simulated hair on the user device (Paragraph [0110], FIG. 15 is an illustration depicting interactive environment user interface 1500 where simulation is an integral part of hair style design. In this example, system 100 provides users with simulation-assisted modeling of hair that enables the users to develop a rest pose of a model visually under gravity and other simulated effects ...; paragraph [0115], in step 1650, the hair model is displayed based on the one or more changes and simulation results for hair model. Therefore, the rest pose of hair model 1540 may be developed visually under gravity or other simulated effects. Behavior and response of hair model 1540 during simulation can be visualized for its rest or reference pose in interactive environment user interface 1500). However, Witkin doses not specifically disclose generating hair geometry for the 3D object based on a type of the user device. In additional, Bondich discloses (Abstract, systems and methods are provided for rendering hair ...) generating hair geometry for the 3D object based on a type of the user device (FIG. 1; Col 3, lines 1-10, client devices 102 ...; Col 4, lines 11-31, the hair rendering system 124 may determine whether the user device satisfies certain minimum processing capabilities (e.g., whether the user device has access to a graphics library with a first set of functions) ...; Col 6, lines 59-67, the hair rendering system 124 renders a display of hair using the hair spline data in three passes for each video frame that depicts a user's face. In a first pass of the three passes: a geometry of the hair is generated using the hair spline data and the additional hair strands). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 2, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 1). However, Witkin doses not specifically disclose further comprising: determining that the user device is of a first type; and wherein, in response to determining that the user device is of the first type, generating the hair geometry comprises generating a geometry shell that encompasses the plurality of curves. In additional, Bondich discloses further comprising: determining that the user device is of a first type (FIG. 1; Col 3, lines 1-10, client devices 102 ...; Col 4, lines 11-31, the hair rendering system 124 may determine whether the user device satisfies certain minimum processing capabilities (e.g., whether the user device has access to a graphics library with a first set of functions) ...); and wherein, in response to determining that the user device is of the first type (Col 4, lines 18-24, if the user device does satisfy the minimum processing capabilities, then the selected hair style is modeled in real-time and each hair strand or group of hair strands is modeled ...), generating the hair geometry (Col 6, lines 59-67, the hair rendering system 124 renders a display of hair using the hair spline data in three passes for each video frame that depicts a user's face. In a first pass of the three passes: a geometry of the hair is generated using the hair spline data and the additional hair strands) comprises generating a geometry shell that encompasses the plurality of curves (Col 10, lines 60-67 to Col 11, lines 1-9, FIG. 4 is a block diagram showing an example hair rendering system 124 ... Hair strand input module 412 receives a hair input file from a user that specifies (e.g., in floating point format) the list of curves of each hair strand. In some implementations, this file is created by a designer and provided to users of a messaging client application 104. Once selected, the file is loaded into the hair strand input module 412. In some implementations, a user of the messaging client application 104 generates the hair file that lists the curves for each hair strand and inputs that file to the hair strand input module 412). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 3, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 1). However, Witkin doses not specifically disclose further comprising: determining that the user device is of a second type; and wherein, in response to determining that the user device is a device of the second type, generating the hair geometry comprises generating a plurality of hair cards, wherein each hair card corresponds to a respective curve of the plurality of curves by extruding, along the respective curve, one of: a line segment and a polygon strip. In additional, Bondich discloses further comprising: determining that the user device is of a second type (FIG. 1; Col 4, lines 11-31, the hair rendering system 124 may determine whether the user device satisfies certain minimum processing capabilities (e.g., whether the user device has access to a graphics library with a first set of functions) ... If the user device does not satisfy the minimum processing capabilities, then the selected hair style is presented in the video stream depicting the user face in a static manner. In such cases, the hair geometry including all of the hair strands may be modeled ...); and wherein, in response to determining that the user device is a device of the second type (Col 4, lines 11-31, if the user device does not satisfy the minimum processing capabilities, then the selected hair style is presented in the video stream depicting the user face in a static manner. In such cases, the hair geometry including all of the hair strands may be modeled ...), generating the hair geometry (Col 6, lines 59-67, the hair rendering system 124 renders a display of hair using the hair spline data in three passes for each video frame that depicts a user's face. In a first pass of the three passes: a geometry of the hair is generated using hair spline data and the additional hair strands) comprises generating a plurality of hair cards (Col 4, lines 11-31, the hair geometry including all of the hair strands may be modeled ), wherein each hair card corresponds to a respective curve of the plurality of curves by extruding (Col 10, lines 60-67 to Col 11, lines 1-9, FIG. 4 is a block diagram showing an example hair rendering system 124 ... Hair strand input module 412 receives a hair input file from a user that specifies (e.g., in floating point format) the list of curves of each hair strand. In some implementations, this file is created by a designer and provided to users of a messaging client application 104. Once selected, the file is loaded into the hair strand input module 412. In some implementations, a user of the messaging client application 104 generates the hair file that lists the curves for each hair strand and inputs that file to the hair strand input module 412)), along the respective curve, one of: a line segment and a polygon strip (Col 14, lines 60-67 to Col 15, lines 1-14, an illustrative triangle strip is shown in FIG. 7A. To avoid creation of many triangles, the multi-pass hair rendering module 418 uses instanced drawing, which creates a single triangle strip on initialization (e.g., hairstyle may have strands with maximum 25 points number in which case the triangle strip is created with 50 vertices and 48 triangles). This triangle strip is created and drawn only once per frame, which keeps memory usage low and allows a great number of triangles to be created fast). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 4, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 3). However, Witkin doses not specifically disclose wherein the extruding comprises extruding along the respective curve based on the hair geometry metadata associated with the curve to create one or more of a hair card, a tube, or a curl. In additional, Bondich discloses wherein the extruding comprises extruding along the respective curve based on the hair geometry metadata associated with the curve (Col 10, lines 60-67 to Col 11, lines 1-9, FIG. 4 is a block diagram showing an example hair rendering system 124 ... Hair strand input module 412 receives a hair input file from a user that specifies (e.g., in floating point format) the list of curves of each hair strand. In some implementations, this file is created by a designer and provided to users of a messaging client application 104. Once selected, the file is loaded into the hair strand input module 412. In some implementations, a user of the messaging client application 104 generates the hair file that lists the curves for each hair strand and inputs that file to the hair strand input module 412) to create one or more of a hair card, a tube, or a curl (Col 15, lines 1-14, multi-pass hair rendering module 418 uses instanced drawing, which creates a single triangle strip on initialization (e.g., hairstyle may have strands with maximum 25 points number in which case the triangle strip is created with 50 vertices and 48 triangles). This triangle strip is created and drawn only once per frame, which keeps memory usage low and allows a great number of triangles to be created fast. The hair strand points including the generated hair strands are read, every frame of a video, and transformed to simulated strand point positions in a visual model). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 5, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 1). However, Witkin doses not specifically disclose further comprising: determining that the user device is of a third type; and wherein, in response to determining that the user device is a device of the third type, generating the hair geometry comprises generating one or more triangle strips based on the plurality of curves. In additional, Bondich discloses further comprising: determining that the user device is of a third type (FIG. 1; Col 4, lines 11-31, the hair rendering system 124 may determine whether the user device satisfies certain minimum processing capabilities (e.g., whether the user device has access to a graphics library with a first set of functions) ... If the user device does not satisfy the minimum processing capabilities, then the selected hair style is presented in the video stream depicting the user face in a static manner. In such cases, the hair geometry including all of the hair strands may be modeled ...); and wherein, in response to determining that the user device is a device of the third type (Col 4, lines 11-31, if the user device does not satisfy the minimum processing capabilities, then the selected hair style is presented in the video stream depicting the user face in a static manner. In such cases, the hair geometry including all of the hair strands may be modeled ...), generating the hair geometry (Col 6, lines 59-67, the hair rendering system 124 renders a display of hair using the hair spline data in three passes for each video frame that depicts a user's face. In a first pass of the three passes: a geometry of the hair is generated using hair spline data and the additional hair strands) comprises generating one or more triangle strips based on the plurality of curves (Col 14, lines 60-67 to Col 15, lines 1-14, an illustrative triangle strip is shown in FIG. 7A. To avoid creation of many triangles, the multi-pass hair rendering module 418 uses instanced drawing, which creates a single triangle strip on initialization (e.g., hairstyle may have strands with maximum 25 points number in which case the triangle strip is created with 50 vertices and 48 triangles). This triangle strip is created and drawn only once per frame, which keeps memory usage low and allows a great number of triangles to be created fast). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 6, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 5). However, Witkin doses not specifically disclose further comprising creating a layer of hair cards that includes hair with a sparse alpha texture. In additional, Bondich discloses further comprising creating a layer of hair cards that includes hair with a sparse alpha texture (FIG. 2; Col 8, lines 53-67 to Col 9, lines 1-5, hair float texture 207 stores the hair spline data file for each hair style and/or for each frame of a video. The hair float texture 207 stores data in floating point representation rather than integer representation. As an example, the hair float texture 207 for one frame may include a red channel, a green channel, a blue channel, and an alpha channel r each of the plurality of hair strands ... hair float texture 207 is stored locally on a user device used to generate the display of the hair strands ... Col 15, lines 15-58, FIG. 8A is a diagram illustrating a three pass approach. In a first pass (phase 1) of the three passes: multi-pass hair rendering module 418 generates a geometry of the hair using the hair spline data and the additional hair strands that are stored in the RGBA float texture ... The multi-pass hair rendering module 418 stores hair color luminance of each hair strand in a blue channel and stores a one bit transparency of each hair strand in an alpha channel. In a second pass (phase 2) of the three passes, a screen quad is rendered based on the geometry, the blue channel, and the alpha channel ... FIG. 8B is a diagram illustrating a three pass approach. In a first pass (phase 1) of the four passes: multi-pass hair rendering module 418 generates a geometry of the hair using the hair spline data and the additional hair strands that are stored in the RGBA float texture. The multi-pass hair rendering module 418 stores an alpha color mask with additive blending in an alpha channel for each hair strand ). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to create hair with a sparse alpha texture in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 7, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 1), and Witkin further disclose wherein generating the hair geometry (FIGS. 15 and 16; paragraph [0113], a user may interact with interactive environment user 1500 to load a predefined model; paragraph [0115], one or more change to the hair model are received. A change may include a change in geometry, a change in one or more material or physical properties ...) comprises generating one or more additional curves by interpolating between one or more pairs of curves in the plurality of curves (FIGS. 1 and 3; paragraph [0069], the one or more object simulation systems 160 may also generate the simulation data based on interpolating between different poses of curve model 200; FIG. 12; paragraphs [0099]-[0101], in step 1220, a reference pose of a plurality of curve models is received ... In step 1230, interaction eligibility is determined for parts of a simulation of the plurality of curve models based on the reference pose ... The parts of the simulation may include an single strand of hair, pairs of hairs ... In one example, the structure of a hair style or fur pattern may be analyzed to determine the likelihood of interactions between at least two hairs (e.g., a pair) ...). Regarding claim 8, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 1), and Witkin further disclose wherein each curve of the plurality of curves is attached to a mesh face of a scalp mesh that can be fitted to the 3D object (FIG. 1; paragraph [0040], a user of the one or more design computers 110 acting as a modeler may employ one or more systems or tools to design, create, or modify objects within a computer-generated scene. The modeler may use modeling software to sculpt and refine a neutral 3D model to fit predefined aesthetic needs of one or more character designers ...; paragraph [0044], the one or more object modeling systems 130 may be configured to generated a model to include a description of the shape of an object. The one or more object modeling systems 130 can be configured to facilitate the creation and/or editing of features, such as non-uniform rational B-splines or NURBS, polygons and subdivision surfaces (or SubDivs), that may be used to describe the shape of an object ... SubDivs are a combination of both NURBS and polygons representing a smooth surface via the specification of a coarser piecewise linear polygon mesh). Regarding claim 9, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 1). However, Witkin doses not specifically disclose further comprising: determining a device type; and selecting, based on the device type, a generation technique to generate the hair geometry, wherein the generation technique is one of: generating a geometry shell that encompasses the plurality of curves; generating a plurality of hair cards, wherein each hair card corresponds to a respective curve of the plurality of curves; or generating one or more polygonal strips based on the plurality of curves. In additional, Bondich discloses further comprising: determining a device type (FIG. 1; Col 3, lines 1-10, client devices 102 ...; Col 4, lines 11-31, the hair rendering system 124 may determine whether the user device satisfies certain minimum processing capabilities (e.g., whether the user device has access to a graphics library with a first set of functions) ... If the user device does not satisfy the minimum processing capabilities, then the selected hair style is presented in the video stream depicting the user face in a static manner. In such cases, the hair geometry including all of the hair strands may be modeled ...); and selecting, based on the device type, a generation technique to generate the hair geometry (Col 4, lines 11-31, if the user device does not satisfy the minimum processing capabilities, then the selected hair style is presented in the video stream depicting the user face in a static manner. In such cases, the hair geometry including all of the hair strands may be modeled ...), wherein the generation technique is one of: generating a geometry shell that encompasses the plurality of curves; generating a plurality of hair cards, wherein each hair card corresponds to a respective curve of the plurality of curves; or generating one or more polygonal strips (Col 14, lines 60-67 to Col 15, lines 1-14, an illustrative triangle strip is shown in FIG. 7A. To avoid creation of many triangles, the multi-pass hair rendering module 418 uses instanced drawing, which creates a single triangle strip on initialization (e.g., hairstyle may have strands with maximum 25 points number in which case the triangle strip is created with 50 vertices and 48 triangles). This triangle strip is created and drawn only once per frame, which keeps memory usage low and allows a great number of triangles to be created fast) based on the plurality of curves (Col 10, lines 60-67 to Col 11, lines 1-9, FIG. 4 is a block diagram showing an example hair rendering system 124 ... Hair strand input module 412 receives a hair input file from a user that specifies (e.g., in floating point format) the list of curves of each hair strand. In some implementations, this file is created by a designer and provided to users of a messaging client application 104. Once selected, the file is loaded into the hair strand input module 412. In some implementations, a user of the messaging client application 104 generates the hair file that lists the curves for each hair strand and inputs that file to the hair strand input module 412)). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 10, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 9). However, Witkin doses not specifically disclose wherein the device type is of a first type, and wherein the simulating the hair for the 3D object comprises performing a vertex simulation based on the hair geometry. In additional, Bondich discloses wherein the device type is of a first type (FIG. 1; Col 4, lines 18-24, if the user device does satisfy the minimum processing capabilities, then the selected hair style is modeled in real-time and each hair strand or group of hair strands is modeled ...), and wherein the simulating the hair for the 3D object comprises performing a vertex simulation based on the hair geometry (FIG. 4; Col 11, lines 28-51, the hair strand input module 412 provides the RGBA float texture to the hair strand neighbor identification module 414. The hair strand neighbor identification module 414 processes coordinates of each hair strand to identify one or two neighbor hair strands of each hair strand. Once the one or two neighbor hair strands are identified, the hair strand neighbor identification module 414 stores the vertex points of, indices or, or references to the neighbor hair strands in association with the given hair strand with which they are neighbors ...). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 11, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 9), and Bondich discloses wherein the simulating the hair for the 3D object comprises performing a mesh simulation based on the hair geometry (FIG. 1; paragraph [0040], a user of the one or more design computers 110 acting as a modeler may employ one or more systems or tools to design, create, or modify objects within a computer-generated scene. The modeler may use modeling software to sculpt and refine a neutral 3D model to fit predefined aesthetic needs of one or more character designers ...; paragraph [0044], the one or more object modeling systems 130 may be configured to generated a model to include a description of the shape of an object. The one or more object modeling systems 130 can be configured to facilitate the creation and/or editing of features, such as non-uniform rational B-splines or NURBS, polygons and subdivision surfaces (or SubDivs), that may be used to describe the shape of an object ... SubDivs are a combination of both NURBS and polygons representing a smooth surface via the specification of a coarser piecewise linear polygon mesh). However, Witkin doses not specifically disclose wherein the device type is of a second type. In additional, Bondich discloses wherein the device type is of a second type (FIG. 1; Col 4, lines 11-31, the hair rendering system 124 may determine whether the user device satisfies certain minimum processing capabilities (e.g., whether the user device has access to a graphics library with a first set of functions) ... If the user device does not satisfy the minimum processing capabilities, then the selected hair style is presented in the video stream depicting the user face in a static manner. In such cases, the hair geometry including all of the hair strands may be modeled ...). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 12, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 9). However, Witkin doses not specifically disclose further comprising: determining a computational load on the user device; and wherein selecting the generation technique is further based on the computational load. In additional, Bondich discloses further comprising: determining a computational load on the user device type (FIG. 1; Col 3, lines 1-10, client devices 102 ...; Col 4, lines 11-31, the hair rendering system 124 may determine whether the user device satisfies certain minimum processing capabilities (e.g., whether the user device has access to a graphics library with a first set of functions) ...); and wherein selecting the generation technique is further based on the computational load (Col 4, lines 18-31, if the user device does satisfy the minimum processing capabilities, then the selected hair style is modeled in real-time and each hair strand or group of hair strands is modeled ... If the user device does not satisfy the minimum processing capabilities, then the selected hair style is presented in the video stream depicting the user face in a static manner. In such cases, the hair geometry including all of the hair strands may be modeled). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 13, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 12). However, Witkin doses not specifically disclose further comprising receiving, during the virtual experience, an indication of a change in the computational load, and wherein the method further comprising re-generating the hair geometry based on the change in the computational load. In additional, Bondich discloses further comprising receiving, during the virtual experience (FIG. 1; Col 4, lines 11-31, the hair rendering system 124 may determine whether the user device satisfies certain minimum processing capabilities (e.g., whether the user device has access to a graphics library with a first set of functions) ... If the user device does satisfy the minimum processing capabilities, then the selected hair style is modeled in real-time and each hair strand or group of hair strands is modeled and updated individually to provide a realistic effect of the hair moving when subjected to movement of the user's head or certain environmental conditions), an indication of a change in the computational load (Col 4, lines 11-31, if the user device does not satisfy the minimum processing capabilities, then the selected hair style is presented in the video stream depicting the user face in a static manner), and wherein the method further comprising re-generating the hair geometry based on the change in the computational load (Col 14, lines 60-67 to Col 15, lines 1-14, an illustrative triangle strip is shown in FIG. 7A. To avoid creation of many triangles, the multi-pass hair rendering module 418 uses instanced drawing, which creates a single triangle strip on initialization (e.g., hairstyle may have strands with maximum 25 points number in which case the triangle strip is created with 50 vertices and 48 triangles). This triangle strip is created and drawn only once per frame, which keeps memory usage low and allows a great number of triangles to be created fast). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 15, Witkin discloses a non-transitory computer-readable medium with instructions stored (FIG. 19; paragraph [0119] ... Computer system 1900 may include memory subsystem 1915; paragraph [0122], memory subsystem 1915 may store information using machine-readable articles, information storage devices, or computer-readable storage media) thereon that, responsive to execution by a processing device (Paragraph [0119], computer system 1900 may be embodied as a computing device), cause the processing device to perform operations (Paragraphs [0120]-[0121], central processing units (CPUs) 1905 or graphical processing units (GPUs) 1910 can include hardware and/or software elements configured for executing logic or program code associated with graphics or for providing graphics-specific functionality) comprising: receiving, at a user device that participates in a virtual experience (FIG. 19; paragraph [0119], computer system 1900 may be embodied as a computing device ...; paragraph [0014], techniques are provided for the interactive designing of computer-generated hair models. In one embodiment, a method for designing of computer-generated hair models may be performed by one or more computer systems. First information may be generated that is configured to display a hair style of a computer-generated hair model within one or more user interfaces associated with a simulation-assisted hair modeling environment ...; paragraph [0038], FIG. 1 is a simplified block diagram of system 100 for creating computer graphics imagery (CGI) and computer-aided animation ...), a hair model (Paragraph [0059], simulation models may include models representing hair; paragraphs [0112]-[0113], FIG. 16 is a flowchart of method 1600 for simulation-assisted hair modeling within an interactive environment ... In step 1620, information defining a hair model is received ...) for a 3D object (Paragraph [0045], the one or more object modeling systems 130 may further generate model data (3D model data) for use by other elements of system 100 or that can be stored in object library 120), wherein the hair model includes a plurality of curves (Paragraph [0060], models used to represent hair generally have the common problem of being a 1-D object (e.g., a curve model) embedded in a 3-D world; paragraph [0061], FIG. 2 is an illustration of curve model 200 that may be used for creating CGI and computer-aided animation in various embodiments), hair geometry metadata associated with one or more curves of the plurality of curves (Paragraph [0064], curve model 200 may include information defining the geometric description of a curve ...), and hair simulation metadata (Paragraph [0054], the one or more object simulation systems 160 may further generate simulation data (e.g., motion and position of an object over time) for use by other elements of system 100 or that can be stored in object library 120); generating, at the user device, hair geometry for the 3D object (Paragraph [0113], a user may interact with interactive environment user 1500 to load a predefined model; paragraph [0115], one or more change to the hair model are received. A change may include a change in geometry, a change in one or more material or physical properties ...) based on the hair model (Paragraph [0113], a user may interact with interactive environment user 1500 to specify one or more predefined objects, shapes, or the like as a starting point of hair model 1540), the hair geometry metadata (Paragraph [0064], curve model 200 may include information defining the geometric); simulating, at the user device, hair for the 3D object (paragraph [0115], in step 1650, the hair model is displayed based on the one or more changes and simulation results for hair mode) based on the hair geometry (Paragraph [0115], a change may include a change in geometry), the hair simulation metadata (Paragraph [0114], design computer 110 may utilize the one or more object simulation systems 160 to obtain simulation results), and one or more physics parameters of the virtual experience (Paragraph [0115], a change in one or more material or physical properties ... under gravity or other simulated effects); and rendering the 3D object with the simulated hair on the user device (Paragraph [0110], FIG. 15 is an illustration depicting interactive environment user interface 1500 where simulation is an integral part of hair style design. In this example, system 100 provides users with simulation-assisted modeling of hair that enables the users to develop a rest pose of a model visually under gravity and other simulated effects ...; paragraph [0115], in step 1650, the hair model is displayed based on the one or more changes and simulation results for hair model. Therefore, the rest pose of hair model 1540 may be developed visually under gravity or other simulated effects. Behavior and response of hair model 1540 during simulation can be visualized for its rest or reference pose in interactive environment user interface 1500). However, Witkin doses not specifically disclose generating hair geometry for the 3D object based on a type of the user device. In additional, Bondich discloses (Abstract, systems and methods are provided for rendering hair ...) generating hair geometry for the 3D object based on a type of the user device (FIG. 1; Col 3, lines 1-10, client devices 102 ...; Col 4, lines 11-31, the hair rendering system 124 may determine whether the user device satisfies certain minimum processing capabilities (e.g., whether the user device has access to a graphics library with a first set of functions) ...; Col 6, lines 59-67, the hair rendering system 124 renders a display of hair using the hair spline data in three passes for each video frame that depicts a user's face. In a first pass of the three passes: a geometry of the hair is generated using the hair spline data and the additional hair strands). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 16, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 15). However, Witkin doses not specifically disclose wherein the operations further comprise: determining a device type; and selecting, based on the device type, a generation technique to generate the hair geometry, wherein the generation technique is one of: generating a geometry shell that encompasses the plurality of curves; generating a plurality of hair cards, wherein each hair card corresponds to a respective curve of the plurality of curves; or generating one or more polygonal strips based on the plurality of curves. In additional, Bondich discloses wherein the operations further comprise: determining a device type; and selecting, based on the device type (FIG. 1; Col 3, lines 1-10, client devices 102 ...; Col 4, lines 11-31, the hair rendering system 124 may determine whether the user device satisfies certain minimum processing capabilities (e.g., whether the user device has access to a graphics library with a first set of functions) ...), a generation technique to generate the hair geometry (Col 4, lines 11-31, if the user device does not satisfy the minimum processing capabilities, then the selected hair style is presented in the video stream depicting the user face in a static manner. In such cases, the hair geometry including all of the hair strands may be modeled ...), wherein the generation technique is one of: generating a geometry shell that encompasses the plurality of curves; generating a plurality of hair cards, wherein each hair card corresponds to a respective curve of the plurality of curves; or generating one or more polygonal strips (Col 14, lines 60-67 to Col 15, lines 1-14, an illustrative triangle strip is shown in FIG. 7A. To avoid creation of many triangles, the multi-pass hair rendering module 418 uses instanced drawing, which creates a single triangle strip on initialization (e.g., hairstyle may have strands with maximum 25 points number in which case the triangle strip is created with 50 vertices and 48 triangles). This triangle strip is created and drawn only once per frame, which keeps memory usage low and allows a great number of triangles to be created fast) based on the plurality of curves (Col 10, lines 60-67 to Col 11, lines 1-9, FIG. 4 is a block diagram showing an example hair rendering system 124 ... Hair strand input module 412 receives a hair input file from a user that specifies (e.g., in floating point format) the list of curves of each hair strand. In some implementations, this file is created by a designer and provided to users of a messaging client application 104. Once selected, the file is loaded into the hair strand input module 412. In some implementations, a user of the messaging client application 104 generates the hair file that lists the curves for each hair strand and inputs that file to the hair strand input module 412)). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 18, Witkin discloses a system comprising: a memory with instructions stored thereon (FIG. 19; paragraph [0119] ... Computer system 1900 may include memory subsystem 1915; paragraph [0122], memory subsystem 1915 may store information using machine-readable articles, information storage devices, or computer-readable storage media); and a processing device, coupled to the memory (Paragraph [0119], computer system 1900 may include familiar computer components, such as one or more one or more data processors or central processing units (CPUs) 1905, one or more graphics processors or graphical processing units (GPUs) 1910, memory subsystem 1915 ... Computer system 1900 can include system bus 1935 interconnecting the above components and providing functionality), the processing device configured to access the memory and execute the instructions (Paragraphs [0120]-[0121], central processing units (CPUs) 1905 or graphical processing units (GPUs) 1910 can include hardware and/or software elements configured for executing logic or program code associated with graphics or for providing graphics-specific functionality), wherein the instructions cause the processing device to perform operations comprising: receiving, at a user device that participates in a virtual experience (FIG. 19; paragraph [0119], computer system 1900 may be embodied as a computing device ...; paragraph [0014], techniques are provided for the interactive designing of computer-generated hair models. In one embodiment, a method for designing of computer-generated hair models may be performed by one or more computer systems. First information may be generated that is configured to display a hair style of a computer-generated hair model within one or more user interfaces associated with a simulation-assisted hair modeling environment ...; paragraph [0038], FIG. 1 is a simplified block diagram of system 100 for creating computer graphics imagery (CGI) and computer-aided animation ...), a hair model (Paragraph [0059], simulation models may include models representing hair; paragraphs [0112]-[0113], FIG. 16 is a flowchart of method 1600 for simulation-assisted hair modeling within an interactive environment ... In step 1620, information defining a hair model is received ...) for a 3D object (Paragraph [0045], the one or more object modeling systems 130 may further generate model data (3D model data) for use by other elements of system 100 or that can be stored in object library 120), wherein the hair model includes a plurality of curves (Paragraph [0060], models used to represent hair generally have the common problem of being a 1-D object (e.g., a curve model) embedded in a 3-D world; paragraph [0061], FIG. 2 is an illustration of curve model 200 that may be used for creating CGI and computer-aided animation in various embodiments), hair geometry metadata associated with one or more curves of the plurality of curves (Paragraph [0064], curve model 200 may include information defining the geometric description of a curve ...), and hair simulation metadata (Paragraph [0054], the one or more object simulation systems 60 may further generate simulation data (e.g., motion and position of an object over time) for use by other elements of system 100 or that can be stored in object library 120); generating, at the user device, hair geometry for the 3D object (Paragraph [0113], a user may interact with interactive environment user 1500 to load a predefined model; paragraph [0115], one or more change to the hair model are received. A change may include a change in geometry, a change in one or more material or physical properties ...) based on the hair model (Paragraph [0113], a user may interact with interactive environment user 1500 to specify one or more predefined objects, shapes, or the like as a starting point of hair model 1540), the hair geometry metadata (Paragraph [0064], curve model 200 may include information defining the geometric); simulating, at the user device, hair for the 3D object (paragraph [0115], in step 1650, the hair model is displayed based on the one or more changes and simulation results for hair mode) based on the hair geometry (Paragraph [0115], a change may include a change in geometry), the hair simulation metadata (Paragraph [0114], design computer 110 may utilize the one or more object simulation systems 160 to obtain simulation results), and one or more physics parameters of the virtual experience (Paragraph [0115], a change in one or more material or physical properties ... under gravity or other simulated effects); and rendering the 3D object with the simulated hair on the user device (Paragraph [0110], FIG. 15 is an illustration depicting interactive environment user interface 1500 where simulation is an integral part of hair style design. In this example, system 100 provides users with simulation-assisted modeling of hair that enables the users to develop a rest pose of a model visually under gravity and other simulated effects ...; paragraph [0115], in step 1650, the hair model is displayed based on the one or more changes and simulation results for hair model. Therefore, the rest pose of hair model 1540 may be developed visually under gravity or other simulated effects. Behavior and response of hair model 1540 during simulation can be visualized for its rest or reference pose in interactive environment user interface 1500). However, Witkin doses not specifically disclose generating hair geometry for the 3D object based on a type of the user device. In additional, Bondich discloses (Abstract, systems and methods are provided for rendering hair ...) generating hair geometry for the 3D object based on a type of the user device (FIG. 1; Col 3, lines 1-10, client devices 102 ...; Col 4, lines 11-31, the hair rendering system 124 may determine whether the user device satisfies certain minimum processing capabilities (e.g., whether the user device has access to a graphics library with a first set of functions) ...; Col 6, lines 59-67, the hair rendering system 124 renders a display of hair using the hair spline data in three passes for each video frame that depicts a user's face. In a first pass of the three passes: a geometry of the hair is generated using the hair spline data and the additional hair strands). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 19, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 18). However, Witkin doses not specifically disclose wherein the operations further comprise: determining that the user device is of a first type; and wherein, in response to determining that the user device is of the first type, generating the hair geometry comprises generating a geometry shell that encompasses the plurality of curves. In additional, Bondich discloses wherein the operations further comprise: determining that the user device is of a first type (FIG. 1; Col 3, lines 1-10, client devices 102 ...; Col 4, lines 11-31, the hair rendering system 124 may determine whether the user device satisfies certain minimum processing capabilities (e.g., whether the user device has access to a graphics library with a first set of functions) ...); and wherein, in response to determining that the user device is of the first type (Col 4, lines 18-24, if the user device does satisfy the minimum processing capabilities, then the selected hair style is modeled in real-time and each hair strand or group of hair strands is modeled ...), generating the hair geometry (Col 6, lines 59-67, the hair rendering system 124 renders a display of hair using the hair spline data in three passes for each video frame that depicts a user's face. In a first pass of the three passes: a geometry of the hair is generated using the hair spline data and the additional hair strands) comprises generating a geometry shell that encompasses the plurality of curves (Col 10, lines 60-67 to Col 11, lines 1-9, FIG. 4 is a block diagram showing an example hair rendering system 124 ... Hair strand input module 412 receives a hair input file from a user that specifies (e.g., in floating point format) the list of curves of each hair strand. In some implementations, this file is created by a designer and provided to users of a messaging client application 104. Once selected, the file is loaded into the hair strand input module 412. In some implementations, a user of the messaging client application 104 generates the hair file that lists the curves for each hair strand and inputs that file to the hair strand input module 412). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Regarding claim 20, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 18). However, Witkin doses not specifically disclose wherein the operations further comprise: determining that the user device is of a second type; and wherein, in response to determining that the user device is a device of the second type, generating the hair geometry comprises generating a plurality of hair cards, wherein each hair card corresponds to a respective curve of the plurality of curves by extruding, along the respective curve, one of: a line segment and a polygon strip. In additional, Bondich discloses wherein the operations further comprise: determining that the user device is of a second type (FIG. 1; Col 4, lines 11-31, the hair rendering system 124 may determine whether the user device satisfies certain minimum processing capabilities (e.g., whether the user device has access to a graphics library with a first set of functions) ... If the user device does not satisfy the minimum processing capabilities, then the selected hair style is presented in the video stream depicting the user face in a static manner. In such cases, the hair geometry including all of the hair strands may be modeled ...); and wherein, in response to determining that the user device is a device of the second type (Col 4, lines 11-31, if the user device does not satisfy the minimum processing capabilities, then the selected hair style is presented in the video stream depicting the user face in a static manner. In such cases, the hair geometry including all of the hair strands may be modeled ...), generating the hair geometry comprises generating a plurality of hair cards (Col 4, lines 11-31, the hair geometry including all of the hair strands may be modeled), wherein each hair card corresponds to a respective curve of the plurality of curves by extruding (Col 10, lines 60-67 to Col 11, lines 1-9, FIG. 4 is a block diagram showing an example hair rendering system 124 ... Hair strand input module 412 receives a hair input file from a user that specifies (e.g., in floating point format) the list of curves of each hair strand. In some implementations, this file is created by a designer and provided to users of a messaging client application 104. Once selected, the file is loaded into the hair strand input module 412. In some implementations, a user of the messaging client application 104 generates the hair file that lists the curves for each hair strand and inputs that file to the hair strand input module 412)), along the respective curve, one of: a line segment and a polygon strip (Col 14, lines 60-67 to Col 15, lines 1-14, an illustrative triangle strip is shown in FIG. 7A. To avoid creation of many triangles, the multi-pass hair rendering module 418 uses instanced drawing, which creates a single triangle strip on initialization (e.g., hairstyle may have strands with maximum 25 points number in which case the triangle strip is created with 50 vertices and 48 triangles). This triangle strip is created and drawn only once per frame, which keeps memory usage low and allows a great number of triangles to be created fast). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin incorporate the teachings of Bondich, and applying the system and method for rendering hair taught by Bondich to determine the resource capabilities of the device for generating a geometry of the hair in order to provide a realistic effect of the hair simulation results. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin according to the relied-upon teachings of Bondich to obtain the invention as specified in claim. Claims 14 and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Witkin et al (U.S. Patent Application Publication 2015/0325030 A1) in view of Bondich et al (U.S. Patent No. 11,030,786 B1) in view of Crespi et al (U.S. Patent Application Publication 2024/0070983 A1). Regarding claim 14, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 1). However, Witkin doses not specifically disclose further comprising procedurally generating a UV map corresponding to the generated hair geometry, wherein the UV map includes texture information associated with one or more points on a surface of the generated hair geometry. In additional, Crespi discloses (Paragraphs [0065]-[0066], FIG. 1 is a schematic illustrating a flowchart for a method 100 for generating anonymized digital humans in a digital environment ... At operation 100, human models (e.g., human beings) are scanned or a scanned human catalogue is accessed. The scanned human catalogue may include data from previously scanned humans. In accordance with an embodiment, human models may be scanned by a studio that performs real human scanning. As part of operation 100 and shown in FIG. 5A, FIG. 5B, and FIG. 5C, the scan topology may be modified to a pallet pipeline topology ...) further comprising procedurally generating a UV map (Paragraph [0067], at operation 104, the scanned human models are analyzed and human cataloguing is performed. As shown in FIG. 5A, FIG. 5B, and FIG. 5C, the scanned human models may be imported into a pipeline and produce a set of metadata that describes the model in high detail ...; paragraph [0071], FIG. 2 is a schematic illustrating a flowchart for a method for human geometry cataloging ... the operations shown in FIG. 2 are included as part of human cataloging in operation 104 of FIG. 1; paragraph [0081], at operation 218, hair VAT data is generated for each variation as compared to a chosen base mesh ...; paragraphs [0027]-[0043], hair VAT data is generated ... having a second UV map (UV2) with the mesh's vertices from the original UV1 map, that were translated to their corresponding pixel position on the VAT matrix, acting as a lookup table) corresponding to the generated hair geometry (Paragraph [0072], at operation 200, a human catalog or scanned human models are processed for geometry, such as for hair geometry), wherein the UV map includes texture information associated with one or more points (Paragraph [0043], heir corresponding base mesh (e.g., Female and Male Average Height/Weight), having a second UV map (UV2) with the mesh's vertices from the original UV1 map, that were translated to their corresponding pixel position on the VAT matrix, acting as a lookup table. In example embodiments, this may be needed because the Texel density is different based on Texture size, and the engine may need it to correctly assign each corresponding vertex delta position on the Texture) on a surface of the generated hair geometry (Paragraph [0104], FIG. 5A, FIG. 5B, and FIG. 5C are schematic illustrations of example palette pipelines ... The scan package 502 and human download package include data of scans of humans which may include geometry data including hair geometry data. The geometry data may be in mesh format or in another form (parametric surfaces, and the like). The scan package 502 and human download package may include texture data including hair texture data ...). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin in view of Bondich incorporate the teachings of Crespi, and applying the method for human geometry cataloging taught by Crespi to process the surface of the hair geometry for generating the UV map including texture information associated with pixel position on the surface of the hair geometry. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin in view of Bondich according to the relied-upon teachings of Crespi to obtain the invention as specified in claim. Regarding claim 17, the combination of Witkin in view of Bondich discloses everything claimed as applied above (see claim 15). However, Witkin doses not specifically disclose wherein the operations further comprise: procedurally generating a UV map corresponding to the generated geometry, wherein the UV map includes texture information associated with one or more points on a surface of the generated geometry. In additional, Crespi discloses (Paragraphs [0065]-[0066], FIG. 1 is a schematic illustrating a flowchart for a method 100 for generating anonymized digital humans in a digital environment ... At operation 100, human models (e.g., human beings) are scanned or a scanned human catalogue is accessed. The scanned human catalogue may include data from previously scanned humans. In accordance with an embodiment, human models may be scanned by a studio that performs real human scanning. As part of operation 100 and shown in FIG. 5A, FIG. 5B, and FIG. 5C, the scan topology may be modified to a pallet pipeline topology ...) wherein the operations further comprise: procedurally generating a UV map (Paragraph [0067], at operation 104, the scanned human models are analyzed and human cataloguing is performed. As shown in FIG. 5A, FIG. 5B, and FIG. 5C, the scanned human models may be imported into a pipeline and produce a set of metadata that describes the model in high detail ...; paragraph [0071], FIG. 2 is a schematic illustrating a flowchart for a method for human geometry cataloging ... the operations shown in FIG. 2 are included as part of human cataloging in operation 104 of FIG. 1; paragraph [0081], at operation 218, hair VAT data is generated for each variation as compared to a chosen base mesh ...; paragraphs [0027]-[0043], hair VAT data is generated ... having a second UV map (UV2) with the mesh's vertices from the original UV1 map, that were translated to their corresponding pixel position on the VAT matrix, acting as a lookup table) corresponding to the generated geometry (Paragraph [0072], at operation 200, a human catalog or scanned human models are processed for geometry, such as for hair geometry), wherein the UV map includes texture information associated with one or more points (Paragraph [0043], heir corresponding base mesh (e.g., Female and Male Average Height/Weight), having a second UV map (UV2) with the mesh's vertices from the original UV1 map, that were translated to their corresponding pixel position on the VAT matrix, acting as a lookup table. In example embodiments, this may be needed because the Texel density is different based on Texture size, and the engine may need it to correctly assign each corresponding vertex delta position on the Texture) on a surface of the generated geometry (Paragraph [0104], FIG. 5A, FIG. 5B, and FIG. 5C are schematic illustrations of example palette pipelines ... The scan package 502 and human download package include data of scans of humans which may include geometry data including hair geometry data. The geometry data may be in mesh format or in another form (parametric surfaces, and the like). The scan package 502 and human download package may include texture data including hair texture data ...). Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify the system for creating computer graphics imagery taught by Witkin in view of Bondich incorporate the teachings of Crespi, and applying the method for human geometry cataloging taught by Crespi to process the surface of the hair geometry for generating the UV map including texture information associated with pixel position on the surface of the hair geometry. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the invention to modify Witkin in view of Bondich according to the relied-upon teachings of Crespi to obtain the invention as specified in claim. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to Xilin Guo whose telephone number is (571)272-5786. The examiner can normally be reached Monday - Friday 9:00 AM-5:30 PM EST. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Daniel Hajnik can be reached at 571-272-7642. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /XILIN GUO/Primary Examiner, Art Unit 2616
Read full office action

Prosecution Timeline

Aug 13, 2024
Application Filed
Feb 05, 2026
Non-Final Rejection — §103, §112 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12602855
LIVE MODEL PROMPTING AND REAL-TIME OUTPUT OF PHOTOREAL SYNTHETIC CONTENT
2y 5m to grant Granted Apr 14, 2026
Patent 12597403
DISPLAY DEVICE FOR A VEHICLE
2y 5m to grant Granted Apr 07, 2026
Patent 12579712
ASSET CREATION USING GENERATIVE ARTIFICIAL INTELLIGENCE
2y 5m to grant Granted Mar 17, 2026
Patent 12579766
SYSTEM AND METHOD FOR RAPID OUTFIT VISUALIZATION
2y 5m to grant Granted Mar 17, 2026
Patent 12573121
Automated Generation and Presentation of Sign Language Avatars for Video Content
2y 5m to grant Granted Mar 10, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

1-2
Expected OA Rounds
82%
Grant Probability
99%
With Interview (+17.4%)
2y 5m
Median Time to Grant
Low
PTA Risk
Based on 456 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month