A method and device for obtaining model UV of a sweep node in houdini

By identifying and numbering curve points in Houdini to generate normalized curves, and combining UV clipping and sorting, the problem of automatic UV arrangement generated by the "Sweep" node in Houdini was solved, achieving complete UV arrangement in UV space and improving the resolution of multi-quadrant textures.

CN115880468BActive Publication Date: 2026-03-03WELLINK TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211535043.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-30
Publication Date
2026-03-03
Estimated Expiration
2042-11-30

AI Technical Summary

Technical Problem

In Houdini, the UVs of the model automatically generated by the "Sweep" node are arranged sequentially in the V coordinate of the UV space, resulting in texture duplication and wasted resolution, which affects the efficiency of model texture production.

Method used

By acquiring the input curve, identifying curve points as convert line nodes, numbering them to generate a normalized curve, and performing cross-sectional scanning along the normalized curve, combined with UV shearing and sorting, the complete arrangement of UVs in UV space is achieved, and multi-quadrant arrangement functionality is added.

Benefits of technology

It solves the problems of texture duplication and resolution waste, and improves texture quality and resolution utilization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115880468B_ABST
    Figure CN115880468B_ABST
Patent Text Reader

Abstract

The application provides a model UV obtaining method and device of a Sweep node in Houdini. The method comprises the following steps: obtaining an input curve, performing point identification on the input curve to obtain a convert line node of the curve; numbering the convert line node, generating a normalized curve based on the distance between adjacent convert line nodes, performing preset cross-section scanning along the normalized curve, and obtaining a curved surface model; performing UV cutting according to the obtained curved surface model, performing UV arrangement based on the cut UV, performing a mapping operation based on the UV arrangement, and obtaining the UV of the curved surface model. According to the application, the UV of the model can be completely arranged in the first quadrant of the UV space, so that the problem of poor mapping and repeated mapping can be solved. Moreover, the function of multi-quadrant arrangement is added, so that the utilization rate of the mapping resolution is greatly improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of 3D processing, and more particularly to a method for obtaining UVs of a model of a "Sweep" node in Houdini. This application also relates to a device for obtaining UVs of a model of a "Sweep" node in Houdini. Background Technology

[0002] Houdini is a 3D computer graphics software developed by Side Effects Software Inc. (SESI) of Canada. Houdini was redeveloped based on Prisms and can run on operating systems such as Linux, Windows, and Mac OS. It is a product designed entirely based on a node-based model, and its structure and operation method are very different from other 3D software.

[0003] Houdini comes with Mantra, a renderer based on the Reyes rendering architecture, which allows for fast rendering of motion blur, depth of field, and displacement effects. Mantra is a proven and mature renderer that meets cinematic rendering requirements. Houdini also offers interfaces to third-party renderers such as RenderMan, Mental Ray, Vray, Arnold, and Torque, allowing you to export your scene to these rendering engines for rendering.

[0004] In Houdini, the "Sweep" node can create surfaces by scanning the cross-sectional curve along the input curve, and can automatically generate model UVs. However, the automatically calculated UVs are arranged sequentially along the V coordinates in UV space. This arrangement of UVs will cause great trouble for the subsequent model texture creation, such as texture duplication and wasted texture resolution. Summary of the Invention

[0005] To address one or more of the problems mentioned in the background art, this application proposes a method for obtaining the UV model of the "Sweep" node in Houdini. This application also relates to a device for obtaining the UV model of the "Sweep" node in Houdini.

[0006] This application provides a method for obtaining the UV (unique identifier) ​​of the "Sweep" node model in Houdini, including:

[0007] Obtain the input curve, and identify the points of the input curve as the convertline nodes of the curve;

[0008] The converter line nodes are numbered, and a normalized curve is generated based on the distance between the numbered and adjacent converter line nodes. A preset cross-sectional scan is performed along the normalized curve to obtain a surface model.

[0009] UV shearing is performed based on the obtained surface model, and UV arrangement is performed based on the sheared UVs;

[0010] Based on the UV sorting, a texturing operation is performed to obtain the UVs of the curved surface model.

[0011] Optionally, the UV of the surface model is in the first quadrant of the UV space.

[0012] Optionally, the normalized curve may have the same number of points as the surface model.

[0013] Optional, also includes:

[0014] The convert line node is set with a corresponding ID attribute, and the ID attribute of the convert line node is passed to the original model.

[0015] Optionally, it also includes application to the “Compiled Block” process.

[0016] This application also provides a device for obtaining the UVs of the "Sweep" node in Houdini, including:

[0017] The acquisition module is used to acquire the input curve, identify the points of the input curve, and use them as the convert line nodes of the curve.

[0018] The scanning module is used to number the converter line nodes, generate a normalized curve based on the distance between the numbered and adjacent converter line nodes, and perform a preset cross-sectional scan along the normalized curve to obtain a surface model.

[0019] The processing module is used to perform UV shearing based on the acquired surface model, and to arrange the UVs based on the sheared UVs.

[0020] The texturing module is used to perform texturing operations based on the UV sorting to obtain the UVs of the surface model.

[0021] Optionally, the UV of the surface model is in the first quadrant of the UV space.

[0022] Optionally, the normalized curve may have the same number of points as the surface model.

[0023] Optional, also includes:

[0024] The convert line node is set with a corresponding ID attribute, and the ID attribute of the convert line node is passed to the original model.

[0025] Optionally, it also includes application to the “Compiled Block” process.

[0026] The advantages of this application over the prior art are:

[0027] This application provides a method for obtaining UVs of the "Sweep" node model in Houdini, comprising: acquiring an input curve; identifying points on the input curve as convert line nodes; numbering the convert line nodes; generating a normalized curve based on the distance between adjacent convert line nodes; and performing a preset cross-sectional scan along the normalized curve to obtain a surface model; performing UV clipping on the acquired surface model; arranging the clipped UVs; and performing a texture mapping operation based on the UV arrangement to obtain the UVs of the surface model. Through this application, the UVs of the model can be completely arranged in the first quadrant of UV space, thus solving the problems of difficult texture drawing and texture duplication. Furthermore, the addition of multi-quadrant arrangement functionality greatly improves the utilization rate of texture resolution. Attached Figure Description

[0028] Figure 1 This is a schematic diagram illustrating the UV acquisition process of the "Sweep" node in Houdini in this application.

[0029] Figure 2 This is a flowchart of the model generation process in this application.

[0030] Figure 3 This is a schematic diagram of the UV acquisition device for the "Sweep" node in Houdini of this application. Detailed Implementation

[0031] The following are examples of specific implementation processes provided to illustrate the technical solutions to be protected in this application. However, this application may also be implemented in other ways different from those described herein. Those skilled in the art can implement this application by different technical means under the guidance of the concept of this application. Therefore, this application is not limited to the specific embodiments below.

[0032] This application provides a method for obtaining UVs of the "Sweep" node model in Houdini, comprising: acquiring an input curve; identifying points on the input curve as convert line nodes; numbering the convert line nodes; generating a normalized curve based on the distance between adjacent convert line nodes; and performing a preset cross-sectional scan along the normalized curve to obtain a surface model; performing UV clipping on the acquired surface model; arranging the clipped UVs; and performing a texture mapping operation based on the UV arrangement to obtain the UVs of the surface model. Through this application, the UVs of the model can be completely arranged in the first quadrant of UV space, thus solving the problems of difficult texture drawing and texture duplication. Furthermore, the addition of multi-quadrant arrangement functionality greatly improves the utilization rate of texture resolution.

[0033] Figure 1 This is a schematic diagram illustrating the UV acquisition process of the "Sweep" node in Houdini in this application.

[0034] Please refer to Figure 1 As shown, S101 acquires the input curve and performs point recognition on the input curve, which serves as the convert line node of the curve.

[0035] The curves are point-based curves. Generally, computer-generated points are obtained by fitting parameters to the position and orientation of input points to generate curves. Therefore, each curve has specific points used to generate it, and these points determine the shape of the curve.

[0036] In this application, the curve is generated based on Houdini software. The curve is used to generate a surface, and the specific operation is as follows: first, a curve is determined; then, a scan path for the curve is determined; finally, the curve is scanned along the scan path to obtain the curve.

[0037] When a user inputs a curve, the curve is acquired, and points in the curve are identified. These points are referred to as convert line nodes in this application.

[0038] In this application, after identifying the convert line node of a curve, it is also necessary to encode the convert line node. The encoding is to assign a sequence number to each convert line node. The sequence numbers of every two adjacent points are consecutive. Adjacent means that there are no other convert line nodes between the two points on the curve.

[0039] After the convert line node is numbered, a point ID is generated based on the number. The point ID is unique on the curve. Each convert line node has a corresponding unique number for specific reference.

[0040] Furthermore, the point ID can be bound to the point's attributes, allowing the acquisition of the convert line node's attributes when the point ID is determined. These attributes include 3D material parameters, lighting and shadow effect parameters, etc. Specifically, when the attribute is uncertain, it can be empty.

[0041] Please refer to Figure 1 As shown, S102 is the node number of the convert line. A normalized curve is generated based on the distance between the node number and the adjacent nodes of the convert line. A preset cross-sectional scan is performed along the normalized curve to obtain the surface model.

[0042] In this application, the “Sweep” node can create a surface by scanning the cross-sectional curve along the input curve, and can automatically generate model UVs. However, the automatically calculated UVs are arranged sequentially along the V coordinates in the UV space. This arrangement of UVs will cause great trouble for the subsequent model texture creation, such as texture duplication and wasted texture resolution.

[0043] In this application, a normalized curve is generated based on the point (convert line node) number of the input curve and the distance between the points, and a model is generated based on this normalized curve, thereby performing UV clipping and UV alignment on the model.

[0044] Figure 2 This is a flowchart of the model generation process in this application.

[0045] Please refer to Figure 2 As shown, the specific steps for generating a normalized curve are as follows:

[0046] S201 generates normalized curves.

[0047] The convert line node divides the primitive between every two points of the input curve into independent polygons and automatically calculates the "restlength" value of each polygon segment.

[0048] The "restlength" value of each polygon segment is input into the solver. In the solver, a point is generated along the positive Y-axis in each frame, and the input "restlength" is used as the distance between the two points.

[0049] Then, use the "add" node to connect all the newly generated points into a line segment with the same length as the initial curve, thus obtaining the normalized curve.

[0050] The points described in this application can be embedded and removed to achieve equal spacing between the points, thus facilitating the UV mapping.

[0051] Specifically, the determination of embedding and deletion can be performed using the following formula:

[0052]

[0053]

[0054] Where D is a point, i is the point index, n is the number of points, R is the judgment threshold, and J,m is the result interval. If true, then add the point between i and i+1, when If true, then neither addition nor subtraction is needed, when the stated... If true, then subtract one point from the interval i~i+1 mentioned earlier.

[0055] S202 generates a surface based on the normalized curve.

[0056] The surface is a 3D model, and the model is generated by normalizing the curve by using the Houdini internal node "sweep" to convert the normalized curve into a Tube model.

[0057] Please refer to Figure 1 As shown, S103 performs UV shearing based on the acquired surface model, and arranges UVs based on the sheared UVs.

[0058] UV Cutting and Arrangement: Based on the generated model above, select the faces with normals pointing in the positive and negative Y-axis directions and group them. Then, use the "grouppromote" node to convert this face group into a line group. Then, use the "findshotestpath" node to find the shortest path line on the model between the two groups and merge this path line with the previous line group as the group information of the "uvflatten" node to cut the model UVs. Finally, use the "uvlayout" node to arrange the UVs.

[0059] Furthermore, this application calculates the distances between points on the input curve and then inputs these distance values ​​into the Solver to generate new line segments. These line segments have standardized point arrangements, facilitating subsequent attribute lookup. The sweep node is used to convert the new line segments into a model. This model has the same number of points as the model generated from the input line segments, and each point has a corresponding "id" attribute. Based on the id attribute, the standardized UVs can be passed to the original model.

[0060] Please refer to Figure 1 As shown, S104 performs a mapping operation based on the UV sorting to obtain the UVs of the curved surface model.

[0061] In this application, the UVs of the model can be completely arranged in the first quadrant of the UV space, thus solving the problems of difficult texture drawing and texture repetition. Furthermore, the addition of multi-quadrant arrangement functionality greatly improves the utilization rate of texture resolution.

[0062] This application also provides a device for obtaining the UV mapping of the "Sweep" node model in Houdini, including: an acquisition module 301, a scanning module 302, a processing module 303, and a texture module 304.

[0063] Figure 3 This is a schematic diagram of the UV acquisition device for the "Sweep" node in Houdini of this application.

[0064] Please refer to Figure 3 As shown, the acquisition module 301 is used to acquire the input curve and perform point recognition on the input curve as the convert line node of the curve.

[0065] The curves are point-based curves. Generally, computer-generated points are obtained by fitting parameters to the position and orientation of input points to generate curves. Therefore, each curve has specific points used to generate it, and these points determine the shape of the curve.

[0066] In this application, the curve is generated based on Houdini software. The curve is used to generate a surface, and the specific operation is as follows: first, a curve is determined; then, a scan path for the curve is determined; finally, the curve is scanned along the scan path to obtain the curve.

[0067] When a user inputs a curve, the curve is acquired, and points in the curve are identified. These points are referred to as convert line nodes in this application.

[0068] In this application, after identifying the convert line node of a curve, it is also necessary to encode the convert line node. The encoding is to assign a sequence number to each convert line node. The sequence numbers of every two adjacent points are consecutive. Adjacent means that there are no other convert line nodes between the two points on the curve.

[0069] After the convert line node is numbered, a point ID is generated based on the number. The point ID is unique on the curve. Each convert line node has a corresponding unique number for specific reference.

[0070] Furthermore, the point ID can be bound to the point's attributes, allowing the acquisition of the convert line node's attributes when the point ID is determined. These attributes include 3D material parameters, lighting and shadow effect parameters, etc. Specifically, when the attribute is uncertain, it can be empty.

[0071] Please refer to Figure 3 As shown, the scanning module 302 is used to number the convert line nodes, generate a normalized curve based on the distance between the numbered and adjacent convert line nodes, and perform a preset cross-sectional scan along the normalized curve to obtain a surface model.

[0072] In this application, the “Sweep” node can create a surface by scanning the cross-sectional curve along the input curve, and can automatically generate model UVs. However, the automatically calculated UVs are arranged sequentially along the V coordinates in the UV space. This arrangement of UVs will cause great trouble for the subsequent model texture creation, such as texture duplication and wasted texture resolution.

[0073] In this application, a normalized curve is generated based on the point (convert line node) number of the input curve and the distance between the points, and a model is generated based on this normalized curve, thereby performing UV clipping and UV alignment on the model.

[0074] Figure 2 This is a flowchart of the model generation process in this application.

[0075] Please refer to Figure 2 As shown, the specific steps for generating a normalized curve are as follows:

[0076] S201 generates normalized curves.

[0077] The convert line node divides the primitive between every two points of the input curve into independent polygons and automatically calculates the "restlength" value of each polygon segment.

[0078] The "restlength" value of each polygon segment is input into the solver. In the solver, a point is generated along the positive Y-axis in each frame, and the input "restlength" is used as the distance between the two points.

[0079] Then, use the "add" node to connect all the newly generated points into a line segment with the same length as the initial curve, thus obtaining the normalized curve.

[0080] The points described in this application can be embedded and removed to achieve equal spacing between the points, thus facilitating the UV mapping.

[0081] Specifically, the determination of embedding and deletion can be performed using the following formula:

[0082]

[0083]

[0084] Where D is a point, i is the point index, n is the number of points, R is the judgment threshold, and J,m is the result interval. If true, then add the point between i and i+1, when If true, then neither addition nor subtraction is needed, when the stated... If true, then subtract one point from the interval i~i+1 mentioned earlier.

[0085] S202 generates a surface based on the normalized curve.

[0086] The surface is a 3D model, and the model is generated by normalizing the curve by using the Houdini internal node "sweep" to convert the normalized curve into a Tube model.

[0087] Please refer to Figure 3 As shown, the processing module 303 is used to perform UV shearing based on the acquired surface model and to arrange the UVs based on the sheared UVs.

[0088] UV Cutting and Arrangement: Based on the generated model above, select the faces with normals pointing in the positive and negative Y-axis directions and group them. Then, use the "grouppromote" node to convert this face group into a line group. Then, use the "findshotestpath" node to find the shortest path line on the model between the two groups and merge this path line with the previous line group as the group information of the "uvflatten" node to cut the model UVs. Finally, use the "uvlayout" node to arrange the UVs.

[0089] Furthermore, this application calculates the distances between points on the input curve and then inputs these distance values ​​into the Solver to generate new line segments. These line segments have standardized point arrangements, facilitating subsequent attribute lookup. The sweep node is used to convert the new line segments into a model. This model has the same number of points as the model generated from the input line segments, and each point has a corresponding "id" attribute. Based on the id attribute, the standardized UVs can be passed to the original model.

[0090] Please refer to Figure 3 As shown, the texture module 304 is used to perform texture operations based on the UV sorting to obtain the UVs of the curved surface model.

[0091] In this application, the UVs of the model can be completely arranged in the first quadrant of the UV space, thus solving the problems of difficult texture drawing and texture repetition. Furthermore, the addition of multi-quadrant arrangement functionality greatly improves the utilization rate of texture resolution.

[0092] The above description is merely a preferred embodiment of the present invention and is not intended to limit the invention. Various modifications and variations can be made to the present invention by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A method for obtaining model UV of a "Sweep" node in Houdini, characterized in that, The method comprises the following steps: obtaining an input curve, performing point recognition on the input curve as a convert line node of the curve, the convert line node being provided with an ID attribute, and transmitting the ID attribute of the convert line node to an original model; numbering the convert line node, generating a normalized curve based on the distance between adjacent convert line nodes, and performing a preset cross-section scan along the normalized curve to obtain a curved surface model, the number of points of the normalized curve being the same as the number of points of the curved surface model; performing UV cutting based on the obtained curved surface model, specifically, selecting a face with a normal direction towards a positive direction and a negative direction of a Y axis and grouping the face, converting the face group into a line group by using a "group promote" node, finding a shortest path line on the model between two groups by using a "find shortest path" node, and combining the path line with a previous line group as group information of a "uv flatten" node to cut the model UV, and performing UV arrangement based on the cut UV; performing a mapping operation based on the UV arrangement to obtain a UV of the curved surface model.

2. The method of claim 1, wherein the model UV of the Sweep node in Houdini is obtained by, The UV of the curved surface model is in a first quadrant of a UV space.

3. The method of claim 1 or 2, wherein the model UV of the Sweep node in Houdini is obtained by, The method is applied to a "Compiled Block" process.

4. A model UV obtaining device of a "Sweep" node in Houdini, characterized in that, The method comprises the following steps: an obtaining module, configured to obtain an input curve, perform point recognition on the input curve as a convert line node of the curve, and provide the convert line node with an ID attribute, and transmit the ID attribute of the convert line node to an original model; a scanning module, configured to number the convert line node, generate a normalized curve based on the distance between adjacent convert line nodes, and perform a preset cross-section scan along the normalized curve to obtain a curved surface model, the number of points of the normalized curve being the same as the number of points of the curved surface model; a processing module, configured to perform UV cutting based on the obtained curved surface model, specifically, select a face with a normal direction towards a positive direction and a negative direction of a Y axis and group the face, convert the face group into a line group by using a "group promote" node, find a shortest path line on the model between two groups by using a "find shortest path" node, and combine the path line with a previous line group as group information of a "uv flatten" node to cut the model UV, and perform UV arrangement based on the cut UV; a mapping module, configured to perform a mapping operation based on the UV arrangement to obtain a UV of the curved surface model.

5. The model UV obtaining device of the "Sweep" node in Houdini according to claim 4, wherein, The UV of the curved surface model is in a first quadrant of a UV space.

6. The device for obtaining model UV of "Sweep" node in Houdini according to any one of claims 4-5, wherein, The method is applied to a "Compiled Block" process.

Citation Information

Patent Citations

  • Fluid display method and device, computer readable storage medium and terminal equipment

    CN111476898A

  • Free modeling model manufacturing and material brushing and pasting method and readable storage medium

    CN113870406A