Prosecution Insights
Last updated: August 17, 2026
Application No. 18/749,437

SYSTEM AND METHOD FOR SIMPLIFYING THREE-DIMENSIONAL MODELS

Non-Final OA §103§112
Filed
Jun 20, 2024
Priority
Mar 12, 2018 — continuation of 10/459,706 +2 more
Examiner
KANG, INSUN
Art Unit
Tech Center
Assignee
State Farm Mutual Automobile Insurance Company
OA Round
1 (Non-Final)
79%
Grant Probability
Favorable
1-2
OA Rounds
1y 3m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 79% — above average
79%
Career Allowance Rate
524 granted / 666 resolved
+18.7% vs TC avg
Strong +40% interview lift
Without
With
+39.7%
Interview Lift
resolved cases with interview
Typical timeline
3y 5m
Avg Prosecution
14 currently pending
Career history
685
Total Applications
across all art units

Statute-Specific Performance

§101
16.8%
-23.2% vs TC avg
§103
37.1%
-2.9% vs TC avg
§102
20.3%
-19.7% vs TC avg
§112
18.9%
-21.1% vs TC avg
Black line = Tech Center average estimate • Based on career data from 666 resolved cases

Office Action

§103 §112
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 . This action is responding to the application papers filed on 6/20/2024. Claims 21-40 are pending in the application. The information disclosure statement filed on 6/20/2024 has been considered. Double Patenting The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969). A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b). The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/process/file/efs/guidance/eTD-info-I.jsp. Claims 21-40 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-20 of U.S. Patent No 12045593. Although the claims at issue are not identical, they are not patentably distinct from each other because the patent clams anticipate the instant claims 21-40. 21. A computer system for generating a simplified 3D data model, the computer system including a processor configured to perform operations comprising: receiving a request, written in a first programming language code, from a client computing device, the request requesting the processor to transmit a stored 3D data model to the client computing device; configuring a binding component to enable a library, wherein the library is written for a second programming language code, to provide an output based on an input received in the first programming language code; providing the request to the library, the library generating a first output based on the request; generating a plurality of simplified meshes by modifying a plurality of meshes associated with the stored 3D data model using the first output; forming a simplified 3D data model using the plurality of simplified meshes; and transmitting the simplified 3D data model to the client computing device (patent 1. A computer system for performing polygon simplification, the computer system comprising: a hardware memory device including a three-dimensional (3D) data model and instructions stored thereon; and one or more processors configured to execute the instructions and perform operations comprising: receiving a request written in a first programming language code from a client computing device requesting to transmit the 3D data model to the client computing device; converting the received request into a set of instructions written in a second programming language code; configuring a binding component that bridges the first programming language code to the second programming language code, to enable a library that is written for the second programming language code to be used by the first programming language code; generating a 3D simplified data model by simplifying a plurality of meshes associated with the 3D data model to generate a plurality of simplified meshes based on the set of instructions in the second programming language code and using the library by the first programming language code, the simplified meshes being generated using the library by the first programming language code; and transmitting the 3D simplified data model to the client computing device). 22. The computer system of claim 21, wherein the binding component comprises an application programming interface (API) that provides a glue code for using the library in the first programming language code (patent 2. The computer system of claim 1, wherein the operations further comprise decomposing the 3D data model into the plurality of meshes, wherein the binding component comprises an application programming interface (API) that provides a glue code for using the library in the first programming language code). 23. The computer system of claim 21, wherein generating the plurality of simplified meshes comprises reducing a quantity of polygonal faces in at least one mesh of the plurality of meshes (Patent 3. The computer system of claim 1, wherein the operations further comprise simplifying one mesh of the plurality of meshes by reducing a number of polygonal faces in the one mesh of the plurality of meshes). 24. The computer system of claim 21, wherein the binding component comprises a set of bindings that facilitates converting JavaScript to C++ code (patent 4. The computer system of claim 1, wherein the operations further comprise assembling the plurality of simplified meshes into the 3D simplified data model, wherein the binding component comprises a set of bindings that facilitates converting JavaScript to C++ code). 25. The computer system of claim 21, wherein the request includes one or more user-specified traits for vertices, edges, and faces of the simplified 3D data model (patent 5. The computer system of claim 1, wherein the request includes one or more user specified traits for vertices, edges, and faces of the 3D data model to be used to generate the set of instructions). 26. The computer system of claim 21, wherein modifying the plurality of meshes comprises smoothing at least one of the plurality of meshes (patent 7. The computer system of claim 1, wherein the operations further comprise smoothing at least one of the plurality of meshes). 27. The computer system of claim 26, wherein smoothing at least one of the plurality of meshes comprises smoothing the at least one of the plurality of meshes by at least one of improving surface quality, removing noise, or preserving sharp features (patent 8. The computer system of claim 7, wherein the smoothing at least one of the plurality of meshes comprises smoothing the at least one of the plurality of meshes by at least one selected from a group consisting of improving surface quality, removing noise, and preserving sharp features). 28. The computer system of claim 21, wherein the plurality of meshes comprises a plurality of geometrically separate component meshes (Patent 9. The computer system of claim 1, wherein the plurality of meshes comprises a plurality of geometrically separate component meshes). Per claims 29-33, patent claims 10-17 anticipate instant claims 29-33. Per claims 34-36, patent claims 18-20 anticipate instant claims 34-36. Per claims 37-40, these are media versions of patent claims 4-8 , therefore they are directed to substantially the same invention and recites only obvious differences which would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify either the instant claim or the patent claims such as implementing the method, media or system for performing the method steps. The modification would be obvious because one having ordinary skill in the art would be motivated to expedite the claimed method, media or system. Claims 21-40 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-9 and 11-19 of U.S. Patent No 11216260. Although the claims at issue are not identical, they are not patentably distinct from each other because the patent clams anticipate the instant claims 21-40 or recite the method, media or system versions. 21. A computer system for generating a simplified 3D data model, the computer system including a processor configured to perform operations comprising: receiving a request, written in a first programming language code, from a client computing device, the request requesting the processor to transmit a stored 3D data model to the client computing device; configuring a binding component to enable a library, wherein the library is written for a second programming language code, to provide an output based on an input received in the first programming language code; providing the request to the library, the library generating a first output based on the request; generating a plurality of simplified meshes by modifying a plurality of meshes associated with the stored 3D data model using the first output; forming a simplified 3D data model using the plurality of simplified meshes; and transmitting the simplified 3D data model to the client computing device (Patent claim 1, A polygon simplification computer system for performing polygon simplification within a web application pipeline, said system comprising: a polygon simplification server comprising: a hardware memory device including a three-dimensional (3D) data model; and a polygon simplification module for performing one or more polygon simplification operations on the 3D data model, said polygon simplification module comprising: a binding component comprising a set of bindings that convert JavaScript code into C++ source code; and a mesh simplification module comprising a polygon simplification framework, wherein said polygon simplification module is configured to: receive a request written in JavaScript code for the 3D data model from a client computing device; convert the request for the 3D data model into a set of instructions written in C++ source code; transmit the set of instructions to the mesh simplification module to generate a 3D simplified data model by simplifying or smoothing the 3D data model and reassembling meshes associated with the 3D data model into the 3D simplified data model based on the set of instructions; receive, from the mesh simplification module, the 3D simplified data model; and transmit the 3D simplified data model to the client computing device). Per claims 22-28, these claims correspond to patent claims 1-9. Per claims 29-40, patent claims 11-19 correspond to claims 29-40. Claims 21-40 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-19 of U.S. Patent No 10459706. Although the claims at issue are not identical, they are not patentably distinct from each other because the patent clams 1-19 anticipate the instant claims 21-40 or recite the method, media and system versions. 21. A computer system for generating a simplified 3D data model, the computer system including a processor configured to perform operations comprising: receiving a request, written in a first programming language code, from a client computing device, the request requesting the processor to transmit a stored 3D data model to the client computing device; configuring a binding component to enable a library, wherein the library is written for a second programming language code, to provide an output based on an input received in the first programming language code; providing the request to the library, the library generating a first output based on the request; generating a plurality of simplified meshes by modifying a plurality of meshes associated with the stored 3D data model using the first output; forming a simplified 3D data model using the plurality of simplified meshes; and transmitting the simplified 3D data model to the client computing device (patent 1. A polygon simplification computer system for performing polygon simplification within a web application pipeline, said system comprising: a polygon simplification server comprising: a memory device including a three-dimensional (3D) data model; a Node.js environment; and a polygon simplification module running within the Node.js environment for performing one or more polygon simplification operations on the 3D data model, said polygon simplification module comprising: a binding component comprising a set of bindings that convert JavaScript code into C++ source code; and a mesh simplification module comprising a C++ compiled polygon simplification framework, said polygon simplification module configured to: receive a request in JavaScript for the 3D data model from a client computing device; convert the request for the 3D data model into a set of instructions written in C++ source code via the binding component; transmit the set of instructions to the mesh simplification module to instruct the C++ compiled polygon simplification framework to load and simplify the 3D data model by decomposing the 3D data model into a plurality of geometrically separate component meshes, reducing the number of polygonal faces or triangles in each mesh, and reassembling the meshes into a 3D simplified data model; receive, from the mesh simplification module, the 3D simplified data model; and transmit the 3D simplified data model to the client computing device). Per claims 22-28, these claims correspond to patent claims 1-9. Per claims 29-40, patent claims 10-19 correspond to claims 29-40. Claim Objections Claims 21, 29 and 34 are objected to because of the following informalities: per claims 21, 29 and 34, the first appearance of “3D” needs to be “three-dimensional (3D).” “model-using” needs to be “model using.” Appropriate correction is required. 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. Claim 21-40 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 applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention. Per claims 21, 29 and 34, it is unclear how the input received is related to the request received for providing the output. Interpretation: an input included in the request. Per claims 22-28, 30-33 and 35-40, these claims are rejected based on dependency on claims 21, 29, and 34 respectively. Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. 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, 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 21, 23-29, 31-34 and 36-40 are rejected under 35 U.S.C. 103 as being unpatentable over Liu et al. US 2018/0330480, hereafter Liu, Cited) in view of Shimizu (US20150341518, cited). Per claim 21: Liu teaches: A computer system for generating a simplified 3D data model, the computer system including a processor configured to perform operations comprising: (Liu, see at least, 0006]; a memory connected to the processor for storing the high-poly 3D model and the optimized 3D model; [0038] storing the 3D virtual reality experience on one or more 3D virtual reality experience servers; [0119]); [0114], the optimized 3D model may be stored on a web server; [0041] receive, from the at least one user system, a request to load a desired optimized 3D model; and in response to receiving the request, retrieve from the database the desired optimized 3D model and transmit the desired optimized 3D model to the at least one user system) receiving a request, written in a first programming language code, from a client computing device, the request requesting the processor to transmit a stored 3D data model to the client computing device; (Liu, see at least [0039] providing the 3D virtual reality experience to a user upon a request by the user to load the 3D virtual reality experience to the determined suitable virtual reality platform; [0094] Having received a 3D model, the method may include determining the 3D model file format 1020 and converting the 3D model into a standardized 3D polygon file format 1030 using one or more 3D model file converters. For example, the one or more 3D file converts may be selected based on the 3D model file format. For ease of use, the data may be converted to, and stored in a serialization format such as JavaScript Object Notation (JSON) or Extensible Markup Language (XML). This may enable the method to be applied without requiring a user to restrict input to a particular file type; [0041] receive, from the at least one user system, a request to load a desired optimized 3D model; and in response to receiving the request, retrieve from the database the desired optimized 3D model and transmit the desired optimized 3D model to the at least one user system; [0126] load the built 3D VR experience via an http request to the server 8042. For example, the built 3D VR experience may downloaded from the server using a code based system in which a user enters a code to download the targeted experience to run it locally on the user device; [0132] System 11000 may include a communications module (not shown) for facilitating communication between components of the system 11000. Communications module may permit communication between user device 11010 and backend server 11030, and may permit a user device 11010 to request an optimized 3D model or VR experience stored in backend server 11030, and may provide the user with the requested data; [0093] receiving a 3D scan rather than a 3D model, which is remeshed into a 3D model to form a surface which can be scanned; [0092] a computer-aided design (CAD) model 1011 may be revived from object files. The CAD model 1011 may include a set of mesh data, such as, for example, polygon mesh data or triangle mesh data). Liu does not explicitly teach configuring a binding component to enable a library, wherein the library is written for a second programming language code, to provide an output based on an input received in the first programming language code; providing the request to the library, the library generating a first output based on the request. Shimizu teaches configuring a binding component to enable a library, wherein the library is written for a second programming language code, to provide an output based on an input received in the first programming language code; providing the request to the library, the library generating a first output based on the request (Shimizu, see at least [0062] Code 702a indicates a script that generates an API instance defined by the JavaScript library 800. Code 702b is a script that executes an api.setCopiesSize function, and code 702c is a script that executes an api.setCopiesNum function and an api.startApplication function; [0071] the program of the code 900 is written in C/C++. The code 901 is a declaration for including the functions of the web browser engine WebKit (registered trademark) JavaScriptCore library. The code 901 is used in order to utilize a library that enables the execution of the processes of the request transfer unit 420 from the JavaScript library 800 and the processes of the JavaScript library 800 from the request transfer unit 420 through the web browser 410, and in order to add proprietary APIs; [0073] Because the control request passed to the callback function is in the JavaScript code format, the code 902c converts the control request into a C/C++ character string. The code 902c is realized by a function of the JavaScript library 800; [0077] the JavaScript library 800 is used and thus the request transfer unit 420 is written in C/C++, but the configuration thereof is not particularly limited as long as a library that enables proprietary APIs that can be mutually executed to be added to the JavaScript is provided). It would have been obvious for one having ordinary skill in the art before the effective filing date of the claimed invention to have combined Shimizu’s API library with Liu’s 3D model optimization to modify Liu’s system to combine the conversion library as taught by Shimizu, with a reasonable expectation of success, since they are analogous art because they are from the same field of endeavor related to code generation or programming. Combining Shimizu’s functionality with that of Liu results in a system that allows conversion of a request into a different language. The modification would be obvious because one having ordinary skill in the art would be motivated to make this combination to enable the execution of request transfer processes from a library in a different language through a web browser and add proprietary APIs (Shimizu, see at least [0062] Code 702a indicates a script that generates an API instance defined by the JavaScript library 800. Code 702b is a script that executes an api.setCopiesSize function, and code 702c is a script that executes an api.setCopiesNum function and an api.startApplication function; [0071] the program of the code 900 is written in C/C++. The code 901 is a declaration for including the functions of the web browser engine WebKit (registered trademark) JavaScriptCore library. The code 901 is used in order to utilize a library that enables the execution of the processes of the request transfer unit 420 from the JavaScript library 800 and the processes of the JavaScript library 800 from the request transfer unit 420 through the web browser 410, and in order to add proprietary APIs; [0073] Because the control request passed to the callback function is in the JavaScript code format, the code 902c converts the control request into a C/C++ character string. The code 902c is realized by a function of the JavaScript library 800; [0077] the JavaScript library 800 is used and thus the request transfer unit 420 is written in C/C++, but the configuration thereof is not particularly limited as long as a library that enables proprietary APIs that can be mutually executed to be added to the JavaScript is provided). Liu in view of Shimizu further teaches generating a plurality of simplified meshes by modifying a plurality of meshes associated with the stored 3D data model using the first output; forming a simplified 3D data model(Liu, see at least [0098] Having received a 3D model, the method may include optimizing the model. The method may include applying a preliminary optimization. For example, where a received 3D model contains, or has been translated to contain, polygon data, the method may include reducing the polygon count using quadratic decimation 1040; [0147] Retopology uses mesh reduction techniques, such as mesh decimation, to reduce the polygon count of the high-poly model. After mesh reduction, texture mapping may be employed to add details from the high-poly model back into the low-poly model without a significant increase to the polygon count. …while reducing the polygon count to a specific target; [0006] merge the adjusted geometric shapes to form a reduced 3D model; and texture map the reduced 3D model to provide texture of the high-poly 3D model to form the optimized 3D model; [0042]; [0147] retrieve from the database the desired optimized 3D model and transmit the desired optimized 3D model to the at least one user system; [0132] Communications module may permit communication between user device 11010 and backend server 11030, and may permit a user device 11010 to request an optimized 3D model or VR experience stored in backend server 11030, and may provide the user with the requested data); and transmitting the simplified 3D data model to the client computing device (Liu, see at least [0041] retrieve from the database the desired optimized 3D model and transmit the desired optimized 3D model to the at least one user system; note that the generated optimized 3D model is stored and transmitted to a target). Per claim 23: Liu further teaches: The computer system of claim 21, wherein generating the plurality of simplified meshes comprises reducing a quantity of polygonal faces in at least one mesh of the plurality of meshes (Liu, see at least0098] reducing the polygon count using quadratic decimation 1040; [0147] Retopology uses mesh reduction techniques, such as mesh decimation, to reduce the polygon count of the high-poly model. After mesh reduction, texture mapping may be employed to add details from the high-poly model back into the low-poly model without a significant increase to the polygon count. …while reducing the polygon count to a specific target; [0006] merge the adjusted geometric shapes to form a reduced 3D model; and texture map the reduced 3D model to provide texture of the high-poly 3D model to form the optimized 3D model; [[0031] In some embodiments, the method further includes adding detail to the optimized 3D model based on … a smoothness map; [0147], Retopology uses mesh reduction techniques, such as mesh decimation; [0161] using suitable drawing tools to smooth the geometry; Note that a polygon mesh consists of vertices, edges, and faces). Per claim 24: Liu does not explicitly teach wherein the binding component comprises a set of bindings that facilitates converting JavaScript to C++ code. Shimizu further teaches wherein the binding component comprises a set of bindings that facilitates converting JavaScript to C++ code (Shimizu, see at least [0073] Because the control request passed to the callback function is in the JavaScript code format, the code 902c converts the control request into a C/C++ character string. The code 902c is realized by a function of the JavaScript library 800). It would have been obvious for one having ordinary skill in the art before the effective filing date of the claimed invention to have combined Shimizu’s conversion of a request written in JavaScript into a C/C++ code with Liu’s 3D model optimization to modify Liu’s system to combine the request conversion as taught by Shimizu, with a reasonable expectation of success, since they are analogous art because they are from the same field of endeavor related to code generation or programming. Combining Shimizu’s functionality with that of Liu results in a system that allows conversion of a request into a different language. The modification would be obvious because one having ordinary skill in the art would be motivated to make this combination to add a C/C++ feature expressing JavaScript code to utilize a library that enables the execution of request transfer processes from JavaScript library through a web browser and add proprietary APIs (Shimizu, see at least [0071] Code 900 indicates the overall configuration of the program of the request transfer unit 420, and includes code 901 and code 902. In the present first embodiment, the program of the code 900 is written in C/C++. The code 901 is a declaration for including the functions of the web browser engine WebKit (registered trademark) JavaScriptCore library. The code 901 is used in order to utilize a library that enables the execution of the processes of the request transfer unit 420 from the JavaScript library 800 and the processes of the JavaScript library 800 from the request transfer unit 420 through the web browser 410, and in order to add proprietary APIs; [0077] In the present first embodiment, the JavaScript library 800 is used and thus the request transfer unit 420 is written in C/C++, but the configuration thereof is not particularly limited as long as a library that enables proprietary APIs that can be mutually executed to be added to the JavaScript is provided). Per claim 25: Liu further teaches: The computer system of claim 21, wherein the request includes one or more user-specified traits for vertices, edges, and faces of the simplified 3D data model (Liu, see at least [0132], the dashboard or other interactive interface 11020 may permit a user to view, monitor and edit 3D experiences, such as 3D experiences created through design modules, [0092] The CAD model 1011 may include a set of mesh data, such as, for example, polygon mesh data or triangle mesh data; [0045] filling concave faces, splitting N-gons into quads or triangles, and removing lamina faces; merging stacked vertices; deleting isolated vertices; and deleting non-manifold geometry; [0164] A 3D geometric shape is manifold when its face and edges do not overlap (i.e. share the same space) with the face or edges of other 3D geometric shape; [0106]; [0111] The optimized 3D model can also be qualified by a user, for example, by labelling which parts have too much detail left and which parts have too little. A machine learning module map apply this manually entered information to fine tune the variables used to process the optimized 3D model, such as detail thresholds and vertex weight distribution, to adjust for better accuracy in subsequently processed models;[0122] The modules may include a navigation module for enabling a user to move or teleport around assets in a VR experience… Customization modules may permit a user to change aspects of the VR environment while immersed in the VR environment, such as changing the color or texture of an asset, or replacing one model of an asset with another; [0125]). Per claim 26: Liu further teaches: The computer system of claim 21, wherein modifying the plurality of meshes comprises smoothing at least one of the plurality of meshes. (Liu, see at least [0098] reducing the polygon count using quadratic decimation 1040; [0147] Retopology uses mesh reduction techniques, such as mesh decimation, to reduce the polygon count of the high-poly model. After mesh reduction, texture mapping may be employed to add details from the high-poly model back into the low-poly model without a significant increase to the polygon count. …while reducing the polygon count to a specific target; [0006] merge the adjusted geometric shapes to form a reduced 3D model; and texture map the reduced 3D model to provide texture of the high-poly 3D model to form the optimized 3D model; [[0031] In some embodiments, the method further includes adding detail to the optimized 3D model based on … a smoothness map; [0161] using suitable drawing tools to smooth the geometry and add edges to the geometric shape). Per claim 27: Liu further teaches: The computer system of claim 26, wherein smoothing at least one of the plurality of meshes comprises smoothing the at least one of the plurality of meshes by at least one of improving surface quality, removing noise, or preserving sharp features (Liu, see at least [0020], recognizing ore or more sharp edges in the 3D model; [0105], Recognizing sharp edges 1080 may allow the quality of the image to remain high, as the defining lines remain clean and well defined, which may allow the optimized 3D model to hold more accurate shape with less fine detail; [0173], This has the advantage of permitting the quality of the optimized 3D model to be easily adjusted; [[0031] In some embodiments, the method further includes adding detail to the optimized 3D model based on … a smoothness map; [0161] using suitable drawing tools to smooth the geometry]. Per claim 28: Liu further teaches: The computer system of claim 21, wherein the plurality of meshes comprises a plurality of geometrically separate component meshes (Liu, see at least [0006], approximate each subcomponent of the plurality of subcomponents by a geometric shape; adjust the geometric shape to conform to the subcomponent; merge the adjusted geometric shapes to form a reduced 3D model [0092] The CAD model 1011 may include a set of mesh data, such as, for example, polygon mesh data or triangle mesh data; [0045] filling concave faces, splitting N-gons into quads or triangles, and removing lamina faces; merging stacked vertices; deleting isolated vertices; and deleting non-manifold geometry; [0164] A 3D geometric shape is manifold when its face and edges do not overlap (i.e. share the same space) with the face or edges of other 3D geometric shape; [0008] divide a symmetrical geometric shape into a first half and a second half before adjusting the geometric shape to conform to the subcomponent to which that geometric shape is approximating; [0010] In some embodiments, the processor is further configured to inspect the reassembled adjusted symmetric geometric shape for watertight and manifold consistency; [0163]; Note that the CAD model 1011 includes a set of mesh data, such as polygon mesh data or triangle mesh data). Per claims 29 and 31-33, they are the method versions of claims 21 and 23-25, respectively, and are rejected for the same reasons set forth in connection with the rejection of claims 21 and 23-25 above. Per claims 34 and 36-40, they are the media versions of claims 21 and 23-27, respectively, and are rejected for the same reasons set forth in connection with the rejection of claims 21 and 23-27 above. Examiner’s Note The Examiner has pointed out particular references contained in the prior art of record within the body of this action for the convenience of the Applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply. Applicant, in preparing the response, should consider fully the entire reference as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the Examiner. Allowable Subject Matter Claims 22, 30 and 35 are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. US20170024112 is related to a “node.js” application that converts various formats of 3D assets to a format that the 3D runtime engine can interpret. Any inquiry concerning this communication or earlier communications from the examiner should be directed to INSUN KANG whose telephone number is (571)272-3724. The examiner can normally be reached M-TR 9am-5pm. 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, Chat Do can be reached at 571-272-3721. 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. /INSUN KANG/ Primary Examiner, Art Unit 2193
Read full office action

Prosecution Timeline

Jun 20, 2024
Application Filed
Jul 29, 2026
Non-Final Rejection mailed — §103, §112 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12688032
BUILDING A SPECIFICATION FILE USING CONTAINERIZED LAYERS DERIVED FROM FEATURE FLAGS
3y 5m to grant Granted Jul 21, 2026
Patent 12681834
DETERMINING RISK BASED TEST CASES IN BUILD ROUTINES
2y 7m to grant Granted Jul 14, 2026
Patent 12675259
Space- And Time-Efficient Enumerations
2y 6m to grant Granted Jul 07, 2026
Patent 12619448
Defining Architectures using Declarative Parametric Language
6y 11m to grant Granted May 05, 2026
Patent 12619425
SYSTEM AND METHOD THAT ASSISTS WITH IDENTIFYING UNPREDICTED PORTIONS OF SOURCE CODE FILES FOR SOFTWARE ENGINEERING TASKS
2y 5m to grant Granted May 05, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
79%
Grant Probability
99%
With Interview (+39.7%)
3y 5m (~1y 3m remaining)
Median Time to Grant
Low
PTA Risk
Based on 666 resolved cases by this examiner. Grant probability derived from career allowance 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