3D undulation green generation system for realistic putting simulation

The three-dimensional curved green generation system addresses the limitations of existing golf simulators by generating realistic undulating greens with dynamic friction modeling and accurate ball tracking, improving the realism and effectiveness of putting practice.

KR102993461B1Active Publication Date: 2026-07-21CORETEC
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
KR · KR
Patent Type
Patents
Current Assignee / Owner
CORETEC
Filing Date
2025-12-22
Publication Date
2026-07-21

AI Technical Summary

Technical Problem

Existing golf simulation systems fail to accurately simulate the irregular undulations and slopes of real golf courses, leading to inconsistencies in ball movement and visual errors due to simplified terrain generation and inadequate friction modeling.

Method used

A three-dimensional curved green generation system that uses a spectral density function to generate random fields with tilting and stepping elements, applies a friction model that dynamically adjusts to slope angles, and tracks the ball's position in real time using natural coordinates.

Benefits of technology

The system provides realistic and varied putting environments with precise ball movement simulations, enhancing both visual and physical consistency, allowing for effective putting practice.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 112025145079344-PAT00004_ABST
    Figure 112025145079344-PAT00004_ABST
Patent Text Reader

Abstract

The present invention relates to a three-dimensional undulating green generation system for realistic putting simulation. The present invention comprises: an input module that sets terrain generation parameters of the green according to the difficulty or set value of the putting simulation; and a green generation module that generates a undulating surface in three-dimensional space based on the terrain generation parameters. In particular, the green generation module is characterized by generating a random field having an irregular height distribution using a spectral density function, and selectively superimposing tilting and stepping elements thereon to generate a three-dimensional green map similar to an actual field. Furthermore, the present invention provides a realistic putting physics environment by precisely tracking the altitude of the ball through natural coordinate calculations based on triangle elements and dynamically correcting the coefficient of friction according to the slope of the green.
Need to check novelty before this filing date? Find Prior Art

Description

Technology Field

[0001] The present invention relates to a three-dimensional curved green generation system for realistic putting simulation. Background Technology

[0003] With the recent increase in the golf population, virtual golf simulation systems, such as screen golf, are becoming widely adopted. These systems allow users to enjoy golf indoors in an environment similar to a real course. In particular, since putting accounts for a significant portion of the golf score, it is crucial for simulation systems to implement a precise and realistic putting environment.

[0004] Generally, golf course greens are not flat and feature various undulations and slopes. However, existing putting simulators or games often applied only a tilting method to generate greens or provided only a limited number of terrain patterns. This simple terrain generation method failed to adequately reflect the irregular and complex lies of actual golf courses, limiting users' ability to train to handle various situations.

[0005] Furthermore, there were limitations in the physics engine that determines the ball's movement during putting. A ball traveling on a slope behaves differently from on flat ground due to the interaction between gravity and friction. For example, on an uphill slope, deceleration is greater due to the influence of gravity, while on a downhill slope, acceleration causes the ball to roll further. However, conventional technologies primarily relied on applying the same coefficient of friction as on flat ground to slopes, or simply calculating the change in speed uniformly based on the gradient. This resulted in the degree of curvature and stopping location of the ball on uphill, downhill, and side hill slopes being rendered differently from reality.

[0006] Furthermore, the technology to track the position of the ball in real time on irregular terrain rendered in 3D is also important. As the ball moves, the height of the ground (Z-value) constantly changes; if this is not calculated precisely, visual errors may occur where the ball appears to be buried in the ground or floating in the air. Previously, terrain was often simplified or approximated coordinates were used to reduce computational load, making it difficult to simultaneously satisfy visual realism and physical consistency.

[0007] Therefore, there is a need to develop a new simulation system that can generate a 3D green with irregular undulations like a real field, apply a precise friction model that reflects the characteristics of the slope, and accurately track the path of the ball even on complex terrain. The problem to be solved

[0009] One objective of the present invention is to provide a system that automatically generates realistic 3D undulating greens with various difficulty levels and shapes by generating a random field using a spectral density function to reflect the irregularity of the actual field, and by applying tilting and stepping elements in combination thereto.

[0010] Another objective of the present invention is to ensure visual and physical consistency in which the ball moves while accurately touching the ground even on a curved surface by using natural coordinates to precisely calculate the altitude (Z value) of the ball in real time when tracking the position of the ball on a polygonal mesh constituting a three-dimensional green.

[0011] Another objective of the present invention is to simulate acceleration, deceleration, and path changes on uphill and downhill slopes in the same way as actual physical phenomena by applying an algorithm that analyzes the angle of inclination (θ) and the direction of the ball's movement to realistically implement the behavior of the ball on an inclined plane and dynamically corrects the coefficient of friction (μ) accordingly.

[0012] Meanwhile, other unspecified objectives of the present invention will be further considered to the extent that they can be easily inferred from the following detailed description and effects. means of solving the problem

[0014] To solve the problem described above, the following solution is proposed.

[0015] A three-dimensional curved green generation system according to one embodiment of the present invention comprises an input module that sets terrain generation parameters of a green according to the difficulty or set value of a putting simulation, and a green generation module that generates a curved surface in three-dimensional space based on the terrain generation parameters. The green generation module generates a random field having an irregular height distribution in space using a preset spectral density function, and generates a three-dimensional green map by selectively superimposing a tilting element that gives an overall slope to the random field and a step element that forms a step difference of the terrain.

[0016] In one embodiment, the green generation module may be characterized by generating the random field by dividing it into an in-plane curvature component and a short-period random curvature component in order to precisely simulate the characteristics of the real green.

[0017] In one embodiment, the green generation module may be characterized by using a cosine function having parameters of a step start position, a half-cycle length, and a step height to generate the step element.

[0018] In one embodiment, the green generation module may be characterized by performing an operation to rotate each point data of the green by an angle set with respect to the green center point in order to generate the tilting element.

[0019] In one embodiment, the green generation module may be characterized by defining a base plane, the in-plane curvature, the tilting element, the step element, and the short-period random curvature component as individual components when generating the three-dimensional green map, and generating a final surface through a linear combination in which weights set in the input module are applied to each component.

[0020] In one embodiment, the green generation module may be characterized by generating the three-dimensional green map in the form of a basic flat green, a sloped green, a stepped green, and a complex undulating green by adjusting the weights according to the user's design.

[0021] In one embodiment, the green generation module may be characterized by adding a noise element representing fine surface roughness to the random field to form the curvature of the three-dimensional green map.

[0022] In one embodiment, the 3D green map is composed of a plurality of triangular meshes and further includes a path tracking module that tracks the movement path of a ball located on the 3D green map; the path tracking module may be characterized by calculating the height value (Z) of the ball in real time using natural coordinates expressed as the area ratio for each node according to the position of the ball and the 3D coordinate values ​​of three nodes constituting the triangular mesh where the ball is currently located.

[0023] In one embodiment, the height value (Z p) uses the height values ​​(Z1, Z2, Z3) of the three nodes mentioned above and the area ratios (ξ1, ξ2, ξ3) corresponding to each node, Z p = Z1* ξ1+ Z2 It can be characterized by being calculated through the formula * ξ2+ Z3* ξ3 (where ξ1+ ξ2+ ξ3= 1).

[0024] In one embodiment, the apparatus further includes a physics engine module that calculates the physical force acting on the ball on the three-dimensional green map; wherein the physics engine module analyzes the angle of inclination (θ) of the point where the ball is located and the direction of movement of the ball, and calculates the acceleration of the ball by applying a correction friction coefficient (μ(θ)) that varies according to the angle of inclination (θ).

[0025] In one embodiment, the corrected friction coefficient (μ(θ)) is the reference friction coefficient (μ) on a flat surface. o Using ) and the above inclination angle (θ), μ(θ) = μ o It can be characterized by being calculated according to the relationship / (1 - sinθ), so that the friction force is reduced on a downhill slope and increased on an uphill slope.

[0026] In one embodiment, the physics engine module may further include grass grain direction data on the three-dimensional green map and analyze the angle between the ball's movement direction vector and the grass grain direction vector to apply an additional correction coefficient that increases the friction coefficient when the ball moves in the direction of the grass's inverse grain and decreases the friction coefficient when the ball moves in the direction of the grass's inverse grain.

[0027] In one embodiment, the system further includes a training management module that stores and analyzes the user's putting performance results to derive a vulnerable slope type with a low putting success rate; and the green generation module may be characterized by automatically generating a three-dimensional green map having tilting and curvature patterns corresponding to the vulnerable slope type derived from the training management module to provide a customized training course to the user. Effects of the invention

[0029] A three-dimensional curved green generation system for realistic putting simulation according to one embodiment of the present invention provides the following effects.

[0030] First, by automatically generating a 3D green that combines tilting, stepping, and random noise based on a spectral density function, it is possible to move away from monotonous planar slopes and provide irregular lies similar to actual fields and various difficulty levels, thereby maximizing the user's sense of realism.

[0031] Second, by applying an algorithm that dynamically corrects the coefficient of friction according to the angle of inclination, the physical reliability of the simulation can be dramatically improved by precisely simulating the actual physical phenomenon where resistance increases and deceleration occurs quickly during uphill putting, while acceleration occurs during downhill putting.

[0032] Third, by accurately tracking the 3D position of the ball, especially its elevation (Z value), in real time even on curved surfaces through triangle mesh-based natural coordinate calculations, it is possible to secure visual realism of the ball moving naturally in contact with the ground and guarantee the accuracy of physical calculations.

[0033] Fourth, by adjusting the green generation parameters according to user settings or training objectives, a nearly infinite variety of putting environments can be provided, which eliminates the boredom of repetitive training and enables systematic putting practice.

[0034] Meanwhile, it should be added that even if an effect is not explicitly mentioned here, the effects described in the following specification and the provisional effects expected by the technical features of the present invention are treated as described in the specification of the present invention. Brief explanation of the drawing

[0036] FIG. 1 is a block diagram schematically showing the configuration of a three-dimensional curved green generation system according to one embodiment of the present invention. FIG. 2 is a diagram showing the global coordinate system (X, Y, Z) and local coordinate system (xy) that define the positional relationship between the coordinate system in three-dimensional space and the ball on a curved surface in the present invention. Figure 3 is a diagram illustrating the vertical vector at the current position of the ball on an inclined plane and the slope in the x and y directions resulting therefrom. Figure 4 shows the normal vector component (n) depending on whether there is an uphill or downhill slope. x This is a diagram to explain the sign change of ). Figure 5 is a diagram showing the components of gravity and frictional force required to calculate the coefficient of friction on an inclined plane. FIG. 6 is a graph showing the trend of change in the coefficient of friction (μ) corrected for a change in the angle of inclination (θ) according to the present invention. Figure 7 is a simulation result comparing the difference in the movement path of a ball when a general friction coefficient is applied and when the corrected friction coefficient of the present invention is applied. Figure 8 is a diagram illustrating the frictional force vector acting in the opposite direction to the path of the ball on a two-dimensional plane. FIG. 9 is a drawing illustrating terrain elements such as planes, slopes, steps, random fields, and noise used to generate a three-dimensional green in the present invention. Figure 10 is a diagram illustrating the principle of calculating the altitude (Z value) of a ball using natural coordinates in a triangular mesh structure. Figure 11 is a screen showing a putting path simulation on a tilted plane generated through the system of the present invention. Figure 12 is a simulation screen of a putting path on a short-period undulating green generated through the system of the present invention. Figure 13 is a screen showing a putting path simulation on a normal periodic undulating green generated through the system of the present invention. Figure 14 is a screen showing a simulation of a putting path on a long-period undulating green generated through the system of the present invention. Figure 15 is a screen showing a putting path simulation on a center-point symmetrical concave shape (Ideal) green generated through the system of the present invention. It should be noted that the attached drawings are provided as examples for reference to help understand the technical concept of the present invention, and the scope of the rights of the present invention is not limited by them. Specific details for implementing the invention

[0037] Hereinafter, with reference to the drawings, we will examine the configuration of the present invention as guided by various embodiments thereof and the effects derived therefrom. In describing the present invention, detailed descriptions of related known functions are omitted if they are deemed obvious to a person skilled in the art and could unnecessarily obscure the essence of the invention.

[0038] Expressions such as "comprising," "having," "having," etc. used in the present invention should be understood as open-ended terms implying the possibility of including other embodiments, unless otherwise stated in the phrase or sentence containing such expressions.

[0039] Unless otherwise stated, singular expressions described in the present invention may include the meaning of the plural form, and this applies likewise to singular expressions described in the claims.

[0040] As used in this document, the term "module" may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be a component formed as a whole, or a minimum unit of said component or a part thereof that performs one or more functions.

[0041] In this document, "modules" or "nodes" perform operations such as moving, storing, and converting data using computing devices and storage devices, such as processors (e.g., CPU, AP, etc.) and memory. For instance, "modules" or "nodes" can be implemented as devices such as servers, PCs, tablet PCs, and smartphones.

[0043] First, the overall configuration of a three-dimensional curved green generation system according to an embodiment of the present invention will be described with reference to FIG. 1. FIG. 1 is a block diagram schematically showing the configuration of a three-dimensional curved green generation system (100) according to an embodiment of the present invention. Referring to FIG. 1, the system (100) of the present invention may be configured to include an input module (110), a green generation module (120), a path tracking module (130), a physics engine module (140), and an output unit (150).

[0044] The input module (110) serves as an interface that receives setting values ​​from the user, such as the difficulty of the putting simulation, the green speed, and the type of terrain desired (flat, uphill, downhill, two-tiered green, etc.). These input values ​​are converted into initial parameters for generating terrain in the green generation module (120) described later.

[0045] The green generation module (120) is one of the core components of the present invention and generates a green map with irregular curvature in three-dimensional space based on input parameters. The green generation module (120) may include a random field generation unit (121) that generates a random field using a spectral density function internally, and a tilting / step processing unit (122) that applies an overall tilt or step-shaped difference to the generated random field. The terrain data generated by them is stored in the form of a plurality of triangular meshes and transmitted to the path tracking module (130). More specifically, the green generation module (120) defines terrain elements by subdividing them into a basic plane, in-plane curvature, overall tilt, step-shaped difference, and short-period random curvature to reflect the characteristics of real green. In addition, it is configured to assign weights to each element according to the setting values ​​received from the input module (110) and to generate a final 3D green map by linearly combining them.

[0046] The path tracking module (130) tracks the real-time position of a ball located on a three-dimensional green map. In particular, in order to precisely calculate the height (z) of the ground that changes as the ball's planar coordinates (x, y) change, the present invention identifies the triangular element where the ball is currently located and performs interpolation using the vertex (node) information of the element. The detailed principle of this is described in the explanation of Fig. 9 below.

[0047] The physics engine module (140) calculates the physical force acting on the ball and determines the speed and direction of movement of the ball. In particular, the physics engine module (140) of the present invention is equipped with an algorithm that dynamically corrects the coefficient of friction according to the angle of inclination of the ground, thereby realistically implementing changes in acceleration on uphill and downhill slopes. In addition, it can also perform the function of finely adjusting the friction force by considering the grain direction of the grass.

[0048] The output unit (150) visualizes the generated three-dimensional green and the movement of the ball moving over it and provides it to the user through a display device.

[0049] Next, the coordinate system used in the present invention and the definition of the position of the ball will be explained with reference to FIG. 2. FIG. 2 is a diagram showing the global coordinate system (X, Y, Z) and local coordinate system (xy) that define the positional relationship between the coordinate system in three-dimensional space and the ball on a curved surface in the present invention.

[0050] In the present invention, the XYZ coordinate system, which is a global coordinate system, is used to define the simulation space. Here, the X-axis and Y-axis represent the position on the horizontal plane, and the Z-axis represents the elevation in the vertical direction. As shown in FIG. 2, a green surface with irregular curvature is represented as a three-dimensional curved surface. When a ball is positioned at any point on this curved surface, a tangent plane at that point can be defined. At this time, a normal vector (n) pointing from the center of the ball in a direction perpendicular to the tangent plane can be defined.

[0051] In the simulation, the ball is initially placed at a specific position (x0, y0, z0) at t=0 and moves by receiving an initial velocity (v0) from the user's putting strike. Since the ball moves along a three-dimensional curved surface, the height (z) and slope (gradient) of the green surface corresponding to the ball's position (x, y) change at every moment. To analyze the movement of the ball in this three-dimensional space, the present invention [describes] the local slope at the point where the ball is located as the slope in the X-axis direction (n x ) and Y-axis direction slope (n y It is calculated by decomposing into ). The definition of this coordinate system and vector analysis form the basis for the friction force calculation and path tracking of the physics engine described later.

[0052] Next, with reference to FIGS. 3 to 8, a physical modeling of an inclined plane and a friction coefficient correction algorithm, which are features of the present invention, will be described in detail.

[0053] Figure 3 is a diagram illustrating the normal vector at the ball's current position on an inclined plane and the resulting slope in the x and y directions of the local coordinate system, and Figure 4 is a diagram showing the change in sign of the normal vector component according to the direction of the slope. Referring to Figure 3, a force due to gravity and a frictional force due to the normal force from the ground act on the ball moving on the inclined plane. At this time, the ground normal vector (N) in three-dimensional space is (n x , n y , n z It has a component of ), which serves as an indicator representing the slope of the corresponding point. As illustrated in FIG. 4, the physics engine module (140) determines the relationship between the ball's direction of travel and the slope, for example, the X component (n) of the normal vector. x Analyzes the slope. Since the sign of the X-axis component of the normal vector is opposite for uphill slopes (θ > 0) and downhill slopes (θ < 0), it is possible to determine whether the lie where the ball is currently placed is uphill or downhill.

[0054] FIG. 5 is a diagram showing the gravitational component required to calculate the coefficient of friction on an inclined plane. As the ball moves along the inclined plane, a conversion occurs between the ball's kinetic energy (KE) and potential energy (PE). The physics engine module (140) calculates the change in the ball's velocity based on the law of conservation of energy according to the ball's initial velocity (v0), distance traveled (s), and angle of inclination (θ). In particular, on an actual green, energy loss (E) due to friction with the grass loss Since ) occurs, accurately calculating this determines the realism of the simulation.

[0055] FIG. 8 is a diagram showing the movement path of the ball and the direction of action of the frictional force. The frictional force always acts in the opposite direction to the direction of the ball's movement. In the present invention, a tangent vector is calculated at every moment on the ball's three-dimensional movement path, and the frictional force is applied in the opposite direction. The frictional force (F) acting at this time f ) is generally expressed as the product of the coefficient of friction (μ) and the normal force (N=mg*cosθ).

[0056] Here, the 'slope friction coefficient correction,' which is the most significant feature of the present invention, is applied. Figure 6 is a graph showing the relationship between the slope angle and the friction coefficient correction ratio according to the present invention. Conventional simulations show the friction coefficient of flat ground (μ) even on a slope o The method of using ) as is was adopted. However, the physics engine module (140) of the present invention dynamically corrects the friction coefficient according to the angle of inclination (θ) using the following [Equation 1].

[0058] [Mathematical Formula 1]

[0059]

[0061] (Here, μ(θ) is the corrected friction coefficient, μ o ε is the standard coefficient of friction on flat ground, and θ is the angle of inclination.

[0062] Referring to the graph in Fig. 6, it can be seen that as the slope angle (θ) becomes positive (uphill), the value of 1 - sinθ becomes smaller than 1, causing the total friction coefficient μ(θ) to increase, while conversely, as it becomes negative (downhill), the friction coefficient decreases. This mathematically implements the physical phenomenon of an actual field where the ball rolls more stiffly (increased deceleration) on an uphill and slides more smoothly (decreased deceleration) on a downhill.

[0063] In addition, according to another embodiment of the present invention, the physics engine module (140) can more precisely correct the friction coefficient by considering not only the angle of inclination but also the grain condition of the green. In actual golf courses, the rolling resistance of the ball varies depending on the direction in which the grass grows. The physics engine module (140) can calculate the dot product of the ball's movement direction vector and the grass grain direction vector, and apply a 'grain correction coefficient' to the result of [Equation 1] by additionally multiplying it by the coefficient of friction. This coefficient increases the resistance when the ball moves into the grain of the grass, thereby increasing the friction coefficient, and decreases the resistance when it moves down the grain, thereby decreasing the friction coefficient. Through this, it is possible to simulate even very fine lies.

[0064] Figure 7 compares the simulation results of the ball's trajectory depending on whether or not the friction coefficient correction is applied. In Figure 7, the red line represents the case where a fixed friction coefficient is used, and the turquoise line represents the case where the corrected friction coefficient (μ(θ)) of the present invention is applied. When putting is performed under the same initial conditions, it can be observed that the case where the present invention is applied (turquoise) better reflects the influence of the slope, resulting in differences in distance and direction of movement; for example, on an upward slope, the ball moves only to a lower position, while on the highest horizontal slope, it moves more laterally. This result visually and accurately reproduces the sensation of "the ball rolling" or "riding the slope" that actual golfers feel on a slope, and can be described as a characteristic that enhances the efficiency of practice.

[0065] As such, the present invention goes beyond simple calculation of gravitational acceleration and provides a realistic putting environment by precisely simulating even the change in frictional force according to the curvature of the terrain.

[0066] Next, with reference to FIGS. 9 and FIGS. 10, the process of generating a three-dimensional curved green in the present invention and the method of precisely calculating the position (altitude) of a ball on the generated irregular mesh terrain will be described.

[0067] FIG. 9 is a diagram illustrating various terrain elements used to generate a three-dimensional green in the present invention. The green generation module (120) completes the final three-dimensional green map by superpositioning multiple terrain elements (Layers) rather than a single algorithm to ensure diversity similar to that of a real field. Referring to FIG. 9, there is a 'plane' which is the most basic element, a 'tilt' element that provides an overall slope, a 'step' element that creates a step difference in the terrain, and an irregular 'random field' element generated based on a spectral density function. Additionally, High Frequency Field (HFF) Noise may be added to enhance the realism of the terrain. The present invention generates infinitely diverse forms of three-dimensional mesh terrain, ranging from simple flat land to two-tiered greens and greens of high difficulty with severe undulations, by selectively combining these elements or adjusting their intensity according to the settings of the input module (110).

[0068] The present invention applies a linear combination algorithm as shown in [Equation 2] below to generate a final 3D curved green G(x,y) by combining each of the terrain elements described above.

[0070] [Mathematical Formula 2]

[0071]

[0073] Here, P(x,y) is the reference plane (Ideal Plane), R_long(x,y) is the in-plane undulation, which is a large curvature within the drawn plane, T(x,y) is the tilt, which represents the overall slope, S(x,y) is the stepping, which creates a difference in elevation of the terrain, and R_short(x,y) is the short-period random undulation, which is a fine ripple shape. w0 to w4 are weights assigned to each element, which are adjusted according to the user's difficulty setting.

[0074] Specifically, the in-plane curvature (R long ) and short-period random curve (R short ) is generated by applying a random field generation theory using a spectral density function whose parameters are predetermined to implement natural irregularity, and is generated by varying frequency band parameters. In addition, the step-like step (S) calculates a height value using a cosine function with parameters of the step's starting position, half-cycle length, and step height to create a smooth hill shape without artificial breaks. The slope (T) is generated through an operation that rotates the data of each grid point of the green by an angle set with respect to the center point of the green.

[0075] The present invention has the feature of being able to freely design and create the desired difficulty level and shape (e.g., 2-stage green, pot lid green, etc.) through this linear combination method, going beyond simply tilting a plane.

[0076] For example, looking at the mode for generating Ideal Green, the Basic Plane Green is generated by setting only the Basic Plane (P) element to a non-zero value (Non-zero) and the rest to 0 so that only the Basic Plane (P) element is activated. The Slope Green is created by combining the Basic Plane (P) with the Total Slope (T), and is set so that w0 and w2 have non-zero values. The Step Green is created by combining the Basic Plane (P) with the Step (S), and is set so that w0 and w3 have non-zero values.

[0077] Next, looking at the mode for generating Realistic 3D Digital Green, the basic planar green is in-plane undulation (R long ) and short-period random curve (R short By combining ), a plane with fine lie is generated, and w1 and w4 are set to have non-zero values. The slope green is the in-plane curvature (R long The total slope (T) and short-period random curve (R) in ) short By combining ), w1, w2, and w4 are set to have non-zero values. Step (stair) green is in-plane curvature (R long Step-shaped step (S) and short-period random curve (R) in ) short By combining ), w1, w3, and w4 are set to have non-zero values. Additionally, the composite combination green is set so that w1, w2, w3, and w4 all have non-zero values ​​by combining all elements according to the user's design. In this way, the present invention generates an optimal green suitable for training purposes by allowing the user to directly design the weights, which are the amplitudes of each component.

[0078] FIG. 10 is a diagram illustrating the principle of calculating the altitude (Z value) of a ball using natural coordinates in a triangular mesh structure generated in this way. The randomly generated 3D terrain consists of a set of numerous triangular elements. The path tracking module (130) calculates the planar coordinates (x) of the ball in every frame p , y p First, we search to see which triangle element ) is located inside. As shown in FIG. 9, let the three vertices (Nodes) of the triangle where the ball is currently located be Node 1 (x1, y1, z1), Node 2 (x2, y2, z2), and Node 3 (x3, y3, z3), respectively; let A1, A2, and A3 be the areas of the three interior triangles divided by the ball's position (P), respectively, and let A be the total area; then, the natural coordinates (ξ) which are the weights for each vertex i ) is ξ i = A i / A is defined as (i=1, 2, 3).

[0079] At this time, the ball's current altitude (z p ) is calculated through linear interpolation using the height values ​​(z1, z2, z3) of the three vertices and natural coordinates (ξ1, ξ2, ξ3), and the calculation formula is as shown in [Equation 3] below.

[0081] [Mathematical Formula 3]

[0082]

[0084] However, ξ1+ ξ2+ ξ3= 1.

[0085] Generally, the horizontal position of the ball (x p , y p ) is a value already known through path calculation by the physics engine. Through the above [Equation 3], the present invention provides the accurate ground height (z) at the corresponding location even on irregular curves. pBy finding the ball in real time, the way the ball naturally flows along the curvature of the ground can be perfectly visualized and physically.

[0086] Finally, with reference to FIGS. 11 to 15, various forms of green generated through the system of the present invention and simulation results on them will be described.

[0087] The green generation module (120) of the present invention generates a variety of terrain suitable for putting training by combining elements such as the previously described random field, tilting, stairs, and noise. The physics engine module (140) calculates the path of the ball by applying a slope friction coefficient correction algorithm (μ(θ)) on the terrain thus generated.

[0088] Figure 11 shows the simulation results on a tilting plane, which is the most basic form. Referring to Figure 11, the path of a ball when putting is shown with only a simple slope applied to the plane. In the figure, the yellow path represents the flat ground friction coefficient (μ) according to the conventional method. o This is the result of applying ) consistently, and the turquoise path (Cyan) is the result of correcting the friction coefficient (μ(θ)) according to the slope angle in accordance with the present invention. It can be confirmed that the turquoise path shows a difference from the yellow path, to which the flat friction coefficient was applied, due to the influence of the variation in the friction coefficient according to the slope. This demonstrates that the phenomenon of "riding the slope" felt by golfers on an actual field is realized more realistically through the present invention.

[0089] Figure 12 shows the simulation results on a short-period undulating green with repeated undulations at narrow intervals. When the frequency band is adjusted during random field generation to enhance the short-period component, a bumpy surface is created as shown in Figure 12. On such terrain, the ball encounters a constantly changing micro-slope while moving, and the system of the present invention reflects the normal vectors that vary for each element in real time to precisely simulate a path suitable for it.

[0090] Figures 13 and 14 show the simulation results on general-period and long-period undulating greens, respectively. The general-period green (Figure 13) has a shape most similar to an actual golf course green, while the long-period green (Figure 14) has undulations in the form of gentle and large hills. The system of the present invention can automatically generate terrain of various scales, allowing the user to practice putting in an infinitely new environment rather than a limited pattern. In particular, the long-period green is very effective for distance control training based on friction coefficient correction, as the uphill and downhill slopes are long and continuous.

[0091] Figure 15 shows a test green created with an ideal concave shape. This shape is concave in the center, and the ball tends to converge toward the center regardless of where it starts. Since it is possible to create a green with such an artificial shape, customized simulations for specific purposes (e.g., training for adapting to gravity acceleration on slopes) are also possible.

[0092] Furthermore, the system of the present invention can go beyond simple random generation and provide a customized training environment by analyzing the user's putting data. For example, if the system detects that the user has a significantly low putting success rate on a 'downhill slice lie,' it transmits feedback to the green generation module (120) through the training management module (not shown). Based on this feedback, the green generation module (120) intensively generates and presents to the user a 3D green map that is lower on the right and has an overall downhill slope, thereby helping the user to efficiently overcome their weaknesses.

[0093] As described above, the 3D curved green generation system according to the present invention combines terrain generation technology using a spectral density function with physical technology called slope friction coefficient correction to achieve both visual realism and physical consistency simultaneously. Through this, users can perform putting training so precise that it is difficult to distinguish it from an actual field, even indoors.

[0095] The method and system described above may be implemented as a program (or application) comprising an executable algorithm that can be executed on a computer. The program may be provided by storing it on a non-transitory computer-readable medium. Here, a non-transitory computer-readable medium refers to a medium that stores data semi-permanently and is readable by a device, rather than a medium that stores data for a short period of time, such as a register, cache, or memory. Specifically, the various applications or programs described above may be provided by storing them on non-transitory computer-readable media such as CDs, DVDs, hard disks, Blu-ray discs, USBs, memory cards, ROMs, etc.

[0096] The scope of protection of the present invention is not limited to the description and expression of the embodiments explicitly described above. Furthermore, it is added once again that the scope of protection of the present invention cannot be limited by obvious changes or substitutions in the technical field to which the present invention belongs.

Claims

Claim 1 A three-dimensional undulating green generation system for a virtual golf putting simulation, comprising: an input module that sets terrain generation parameters of the green according to the difficulty or set value of the putting simulation; and a green generation module that generates a undulating surface in three-dimensional space based on the terrain generation parameters; wherein the green generation module generates a random field having an irregular height distribution in space using a spectral density function, and generates a three-dimensional green map by selectively superimposing a tilting element that gives an overall slope to the random field and a step element that forms a difference in terrain. Claim 2 A 3D curved green generation system for realistic putting simulation, wherein, in claim 1, the green generation module generates the random field by dividing it into in-plane curved components and short-period random curved components in order to precisely simulate the characteristics of a real green. Claim 3 A three-dimensional curved green generation system for realistic putting simulation, wherein, in claim 1, the green generation module uses a cosine function having parameters of a step starting position, a half-cycle length, and a step height to generate the step element. Claim 4 A three-dimensional curved green generation system for realistic putting simulation, wherein, in claim 1, the green generation module performs an operation to rotate each point data of the green by an angle set with respect to the green center point in order to generate the tilting element. Claim 5 A 3D curved green generation system for realistic putting simulation according to claim 1, wherein the green generation module defines a basic plane, in-plane curvature, tilting element, step element, and short-period random curvature component as individual components when generating the 3D green map, and generates a final surface through a linear combination in which weights set in the input module are applied to each component. Claim 6 A 3D undulating green generation system for realistic putting simulation, wherein, in claim 5, the green generation module generates the 3D green map in the form of any one of a basic flat green, a sloped green, a stepped green, and a complex undulating green by adjusting the weights according to the user's design.