CN105976423A - Method and device for generating lens flare - Google Patents

Method and device for generating lens flare Download PDF

Info

Publication number
CN105976423A
CN105976423A CN201610283282.XA CN201610283282A CN105976423A CN 105976423 A CN105976423 A CN 105976423A CN 201610283282 A CN201610283282 A CN 201610283282A CN 105976423 A CN105976423 A CN 105976423A
Authority
CN
China
Prior art keywords
hot spot
dough sheet
light source
color
texture
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610283282.XA
Other languages
Chinese (zh)
Other versions
CN105976423B (en
Inventor
曹军
张明
黄馥霖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN201610283282.XA priority Critical patent/CN105976423B/en
Publication of CN105976423A publication Critical patent/CN105976423A/en
Application granted granted Critical
Publication of CN105976423B publication Critical patent/CN105976423B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/506Illumination models

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

The invention discloses a method and a device for generating lens flare. The method comprises steps: a flare model is built in a three-dimensional scene, one or more spot patches is or are arranged on a straight line where a scene light source and the lens center are, and thus, the ratio of the distance between the light source and the spot patches to the distance between the light source and the lens center meets a preset ratio, and attributes of the spot patches in projection space are acquired in real time according to the position of the light source; and according to the attributes of the spot patches, the spot patches are drawn on corresponding positions in the projection space. Thus, the lens flare can be dynamically generated in real time in the three-dimensional scene simply and conveniently, the calculation amount is small, and the method and the device are applied to the scene with high real-time performance requirements.

Description

A kind of generation method and apparatus of Lens Flare
Technical field
The present invention relates to area of computer graphics, particularly relate to the generation method and apparatus of a kind of Lens Flare.
Background technology
Lens Flare is the aestheticism dazzle that the interaction between light and lens structure by incident camera lens is formed, Due to its special visual effect, in photography, films and television programs, game or other computer animations extensively Ground uses.Light and environment during shooting due to works are limited, and are often difficult to capture conjunction when shooting Suitable Lens Flare, the Lens Flare in the watched film of existing spectators and picture is generally by the later stage Special effect making adds, and is based primarily upon image processing algorithm, renders light by analyzing the bright dark areas in image Speckle.And in partial 3-D Product Rendering, for realizing true fine and smooth halation result, the most generally pass through light The halation that the technical construction such as line following are complicated.
Summary of the invention
In the three-dimensional scenics such as game or other computer animations, Lens Flare is to set off sunny weather one by contrast Effective means.But, owing to the picture of game and animation is generally generated, according to front in real time by computer State the later stage special effect making method in photography and films and television programs, it is clear that be difficult to meet requirement of real-time.And lead to Although cross the technology such as ray tracing to carry out physics and render available halation result complicated and changeable, but due to camera lens Halation is the complicated physical action generation of camera lens and light, and its amount of calculation is huge, and existing equipment is difficult to reality Time dynamically generate.
The purpose of the embodiment of the present invention is to provide the generation method and apparatus of a kind of Lens Flare, simple and convenient Realize the real-time generation of Lens Flare effect in three-dimensional scenic.
For achieving the above object, embodiments provide a kind of generation method of Lens Flare, including:
In three-dimensional scenic, set up halation model, the scene light source straight line with place, optical center arranges one Individual or multiple hot spot dough sheets so that described light source to the distance of described hot spot dough sheet with described light source to described The ratio of distances constant of optical center meets ratio set in advance, and according to the position of described light source, obtains in real time The attribute of described hot spot dough sheet in projector space;
According to the attribute of described hot spot dough sheet, described hot spot dough sheet is carried out by the relevant position of projector space Draw.
The generation method of the Lens Flare that the present invention provides is by setting up halation model in three-dimensional scenic, on the scene Scape light source arranges one or more hot spot on the straight line at place, optical center, and according to the position of described light source, Obtain the described hot spot attribute at projector space in real time, according to the attribute of described hot spot, in the phase of projector space Answering and on position draw described hot spot, amount of calculation is less, can be real-time and efficiently in default proportional positions The Lens Flare that light source position dynamically changes is followed in upper generation.
Wherein, the attribute of described hot spot dough sheet includes position, scaling, color, intensity, the anglec of rotation With one or more in observability.
Described in three-dimensional scenic, set up halation model, set on the straight line at place, optical center at scene light source Put one or more hot spot dough sheet, so that described light source arrives to the distance of described hot spot dough sheet with described light source The ratio of distances constant of described optical center meets ratio set in advance, and according to the position of described light source, in real time Obtain the attribute of described hot spot dough sheet in projector space, including:
Obtain position relationship before and after described light source and camera lens, and according to described front and back position relation, it is judged that institute State the observability of hot spot dough sheet;
Calculate the described light source projection coordinate at projector space, and according to the projection coordinate of described light source and institute State hot spot dough sheet location, calculate each hot spot dough sheet position coordinates in projector space;
Obtain the distance of described light source and optical center, and according to described distance, calculate each hot spot dough sheet Intensity;
Obtain the angle that described light source rotates around described optical center at projector space, using described angle as institute State the anglec of rotation of hot spot dough sheet.
Preferably, three Color Channels of described hot spot dough sheet are at described light source and the line of described optical center Staggering on direction, the distance staggered becomes positive correlation with the distance of described hot spot dough sheet to described light source.
Preferably, described hot spot dough sheet is parallel to one of them coordinate plane of world coordinates.
The described attribute according to described hot spot dough sheet, to described hot spot dough sheet on the relevant position of projector space Draw, including:
The described hot spot dough sheet two-dimensional coordinate at projector space is extracted, according to described hot spot by vertex shader The attribute of dough sheet and the aspect ratio information of screen, adjust the output apex coordinate to pixel coloring device;
By described pixel coloring device by the texture of described hot spot dough sheet and color addition to described hot spot dough sheet, Obtain the color value of each pixel on described hot spot dough sheet.
Preferably, extract the described hot spot dough sheet two-dimensional coordinate at projector space described by vertex shader, Attribute according to described hot spot dough sheet and the aspect ratio information of screen, adjust the output top to pixel coloring device After point coordinates, also include:
The third dimension coordinate of described hot spot dough sheet is disposed closest to the value of camera lens.
Further, the described attribute according to described hot spot dough sheet, to institute on the relevant position of projector space State hot spot dough sheet to draw, also include:
Using the intensity of described hot spot dough sheet, texture index and color index as the third dimension of described hot spot dough sheet Degree information is input in tinter, draws to be merged in a batch by all hot spot dough sheets.
Preferably, the described intensity using described hot spot dough sheet, texture index and color index are as described hot spot The third dimension information of dough sheet is input in described tinter, so that all hot spot dough sheets are merged into a batch In draw, including:
Texture used in each hot spot dough sheet is merged into a big texture, and forms corresponding texture index;
Color data used in all hot spot dough sheets is passed to described tinter as specification data;
Texture index, color index and the intensity of described hot spot dough sheet are packaged into a floating number as described The third dimension information of hot spot dough sheet, is input in described tinter;
From described third dimension information, texture index, color index and intensity is parsed by described tinter, From described large texture, search the texture corresponding with described texture index, search and institute from described color data State the color that color index is corresponding, in a batch, all hot spot dough sheets are drawn.
The generation method of the Lens Flare that the present invention provides leaves data packing the unnecessary dimension of hot spot dough sheet in In, the third dimension information as hot spot dough sheet is input in tinter so that hot spot dough sheet can be by routine Method be merged in a batch and draw, greatly reduce dough sheet and draw the performance cost brought, Improve the real-time that Lens Flare generates.
Further, at the described attribute according to described hot spot dough sheet, right on the relevant position of projector space After described hot spot dough sheet is drawn, also include:
Obtain background pixel and the color value product of hot spot pixel, by described color value product and described background picture Element mixes, it is thus achieved that mixed once result;
Described mixed once result is mixed with described hot spot pixel, it is thus achieved that secondary mixing resultant;
Described secondary mixing resultant is exported screen show.
The generation method of the Lens Flare that the present invention provides is also by two kinds of different mixed models, to hot spot face Sheet carries out twice mixing, contributes to strengthening the saturation of Lens Flare, prevents Lens Flare by light ground Hide.
Correspondingly, embodiments provide the generating means of a kind of Lens Flare, including:
MBM, for setting up halation model, at scene light source and place, optical center in three-dimensional scenic Straight line on one or more hot spot dough sheet is set so that described light source to described hot spot dough sheet distance with Described light source meets ratio set in advance to the ratio of distances constant of described optical center, and according to described light source Position, obtains the attribute of described hot spot dough sheet in projector space in real time;
Drafting module, for the attribute according to described hot spot dough sheet, to institute on the relevant position of projector space State hot spot dough sheet to draw.
Wherein, the attribute of described hot spot dough sheet includes position, scaling, color, intensity, the anglec of rotation With one or more in observability.
Preferably, described MBM includes:
Visibility judge unit, is used for obtaining position relationship before and after described light source and camera lens, and according to described Front and back position relation, it is judged that the observability of described hot spot dough sheet;
Position calculation unit, for calculating the described light source projection coordinate at projector space, and according to described light The projection coordinate in source and described hot spot dough sheet location, calculate each hot spot dough sheet in projector space Position coordinates;
Strength co-mputation unit, for obtaining the distance of described light source and optical center, and according to described distance, Calculate the intensity of each hot spot dough sheet;
Rotate computing unit, for obtaining the angle that described light source rotates around described optical center at projector space, Using described angle as the anglec of rotation of described hot spot dough sheet.
Preferably, three Color Channels of described hot spot dough sheet are at described light source and the line of described optical center Staggering on direction, the distance staggered becomes positive correlation with the distance of described hot spot dough sheet to described light source.
Preferably, described hot spot dough sheet is parallel to one of them coordinate plane of world coordinates;Described drafting mould Block includes:
Vertex processing unit, for extracting the described hot spot dough sheet two dimension at projector space by vertex shader Coordinate, according to attribute and the aspect ratio information of screen of described hot spot dough sheet, adjusts output to pixel shader The apex coordinate of device;
Pixel processing unit, for folding texture and the color of described hot spot dough sheet by described pixel coloring device It is added on described hot spot dough sheet, obtains the color value of each pixel on described hot spot dough sheet.
Additionally, described vertex processing unit is additionally operable to be set to the third dimension coordinate of described hot spot dough sheet Value near camera lens.
Further, described drafting module, also include:
Batch combining unit, is used for the intensity of described hot spot dough sheet, texture index and color index as institute The third dimension information stating hot spot dough sheet is input in tinter, so that all hot spot dough sheets to be merged into one batch Draw in secondary.
Preferably, described batch combining unit includes:
Texture merges subelement, for the texture used in each hot spot dough sheet is merged into a big texture, And form corresponding texture index;
Color transfer subelement, for passing the color data used in all hot spot dough sheets as specification data Pass described tinter;
Data packing subelement, for by the texture index of described hot spot dough sheet, color index and intensity packing Become a floating number as the third dimension information of described hot spot dough sheet, be input in described tinter;With,
Batch merges subelement, for parsing texture by described tinter from described third dimension information Index, color index and intensity, search the texture corresponding with described texture index from described large texture, from Described color data is searched the color corresponding with described color index, to all hot spot faces in a batch Sheet is drawn.
Preferably, described device also includes:
Mixed once module, for obtaining the color value product of background pixel and hot spot pixel, by described color Value product mixes with described background pixel, it is thus achieved that mixed once result;
Secondary mixing module, for mixing described mixed once result with described hot spot pixel, it is thus achieved that Secondary mixing resultant;
Result display module, shows for described secondary mixing resultant is exported screen.
Accompanying drawing explanation
Fig. 1 is the method flow diagram of an embodiment of the generation method of the Lens Flare that the present invention provides;
Fig. 2 is the method flow diagram of step S11 that embodiment provides as shown in Figure 1;
Fig. 3 is the facula position and blanking schematic diagram that embodiment provides as shown in Figure 2;
Fig. 4 is the spot intensity curve that embodiment provides as shown in Figure 2;
Fig. 5 is the method flow diagram of step S12 that embodiment provides as shown in Figure 1;
Fig. 6 is the locus schematic diagram of the hot spot dough sheet that embodiment provides as shown in Figure 5;
Fig. 7 is the method flow diagram of step S123 that embodiment provides as shown in Figure 5;
Fig. 8 is the texture schematic diagram after the merging that embodiment provides as shown in Figure 7;
Fig. 9 is the method flow diagram of another embodiment of the generation method of the Lens Flare that the present invention provides;
Figure 10 is the device schematic diagram of an embodiment of the generating means of the Lens Flare that the present invention provides;
Figure 11 is the device schematic diagram of another embodiment of the generating means of the Lens Flare that the present invention provides.
Detailed description of the invention
Below in conjunction with the accompanying drawing in the embodiment of the present invention, the technical scheme in the embodiment of the present invention is carried out clearly Chu, be fully described by, it is clear that described embodiment be only a part of embodiment of the present invention rather than Whole embodiments.Based on the embodiment in the present invention, those of ordinary skill in the art are not making creation The every other embodiment obtained under property work premise, broadly falls into the scope of protection of the invention.
See Fig. 1, be the method flow diagram of an embodiment of the generation method of the Lens Flare that the present invention provides.
The generation method of described Lens Flare, including:
S11, sets up halation model in three-dimensional scenic, sets on the straight line at place, optical center at scene light source Put one or more hot spot dough sheet, so that described light source arrives to the distance of described hot spot dough sheet with described light source The ratio of distances constant of described optical center meets ratio set in advance, and according to the position of described light source, in real time Obtain the attribute of described hot spot dough sheet in projector space.
S12, according to the attribute of described hot spot dough sheet, to described hot spot dough sheet on the relevant position of projector space Draw.
The generation method of the Lens Flare that the present invention provides, uses the hot spot model simplified to calculate the attribute of hot spot, Amount of calculation is less, can generate real-time and efficiently and follow what light source position dynamically changed in default proportional positions Lens Flare, can be applicable to there is requirement of real time but does not make excessive demands in the scene of physical reality.
Wherein, the attribute of described hot spot dough sheet includes position, scaling, color, intensity, the anglec of rotation With one or more in observability.
As in figure 2 it is shown, in the middle of being embodied as, described step S11 includes:
S111, obtains position relationship before and after described light source and camera lens, and according to described front and back position relation, Judge the observability of described hot spot dough sheet.
Described light source can be the sun virtual in scene or other luminous bodys, in embodiment hereof mainly with As a example by the sun.The observability of hot spot is relevant with the position relationship of camera lens with light source, when light source is positioned at camera lens rear Time, hot spot is invisible, i.e. without rendering Lens Flare.Otherwise, when light source is positioned at camera lens front, then should When calculating other attributes of hot spot, render so that it is carried out drafting.
S112, calculates the described light source projection coordinate at projector space, and according to the projection coordinate of described light source And described hot spot dough sheet location, calculate each hot spot dough sheet position coordinates in projector space.
In a preferred embodiment, light source can pass through in the projection coordinate of projector space in OpenGL In the following manner calculates: sun_pos*model_view_matrix*projection_matrix (sun local coordinate * Modelview matrix * projection matrix).
Each hot spot is fixed in a proportional positions of the line of light sources project and optical center, thus hot spot To follow the sun to move, when the sun frames out center, hot spot also can frame out center.Otherwise, light Speckle is gathered to screen center.
S113, obtains the distance of described light source and optical center, and according to described distance, calculates each hot spot The intensity of dough sheet.
As shown in Figure 3 and Figure 4, Q1 is application window, and S1 is light source, and O is optical center, B1 For hot spot dough sheet, J1, J2 are blanking border set in advance, and described blanking border is that spot intensity becomes The border changed, i.e. when outside hot spot falls within the annulus that blanking border J1 and blanking border J2 is surrounded, hot spot is strong Degree gradually weakens.
Specifically, during for simulated solar just to optical center, incident ray vertical incidence camera lens, halation subtracts Weak effect, when the sun falls within the J1 of blanking border when, along with the sun is near optical center, all The intensity linear taper of hot spot.In like manner, when frameing out for simulated solar, angle of incidence of light increases, light The dizzy effect weakened, when outside the sun falls within blanking border J2 when, along with the sun is near away from camera lens The heart, the intensity linear taper of all hot spots.In order to improve efficiency further, when the sun falls within the most outer Local time, do not render halation.
The most as shown in Figure 4, it is less than described blanking border J1 radius institute when the distance of described light source with optical center During corresponding first threshold, the intensity of all hot spot dough sheets with light source near optical center linear taper.Work as institute When stating the distance of light source and optical center more than Second Threshold corresponding to the J2 radius of described blanking border, all The intensity of hot spot dough sheet with light source away from optical center linear taper.Distance when described light source Yu optical center When being between first threshold and Second Threshold, keep the intensity of described hot spot dough sheet.
S114, obtains the angle that described light source rotates around described optical center at projector space, by described angle The anglec of rotation as described hot spot dough sheet.
Each hot spot dough sheet can rotate according to the angle of the sun, with relative between this analog light source and camera lens Effect produced by the change of relation.
Additionally, the size of the scaling of described hot spot dough sheet and described hot spot dough sheet are to the distance of optical center Become negative correlation, i.e. the biggest the closer to optical center hot spot, and can carry out different according to the difference of the hot spot origin cause of formation Adjust.The color of described hot spot dough sheet can need to select according to user, and can be according to the fine day feelings of weather Condition carries out intense adjustment, and described fine day situation can be current intensity of illumination.
The origin cause of formation of hot spot has multiple, and relatively common two kinds as follows: a kind of is owing to the dust on camera lens scatters Causing, another kind causes due to camera lens self space relation.The former hot spot is the least and justifies, position The most random.The shape of the latter depends on camera lens, and the biggest, position is closer to optical center.This Bright ignore the concrete origin cause of formation, and directly by the texture mapping that can embody these origin causes of formation.For dust hot spot distance Farther out, thus may there be the situation of dispersion in screen center.Three Color Channels of hot spot dough sheet of the present invention (RGB channel) staggers on the line direction of described light source and described optical center, to simulate the color of hot spot Dissipating effect, the distance staggered becomes positive correlation with the distance of described hot spot dough sheet to described light source so that the most outer Hot spot dispersion the most obvious, be conducive to improve halation verity.
See Fig. 5, be the method flow diagram of step S12 that embodiment provides as shown in Figure 1.
Preferred embodiment central in one, described hot spot dough sheet is parallel to one of them seat of world coordinates Mark plane (such as xy coordinate plane).As shown in Figure 6, hot spot dough sheet be parallel to world space xy coordinate put down Face, therefore the present invention in vertex shader without by vertex data and world's matrix, camera matrix and projection Matrix multiple, the coordinate system of hot spot patch model vertex data and the coordinate system of projector space flush, Model Space Between hot spot dough sheet by translation and rotate and can map directly to the coordinate plane of projector space.Additionally, be Reducing the amount of calculation in render process, described hot spot dough sheet is preferably square dough sheet.It should be noted that, Though in this specification in major part embodiment all as a example by square dough sheet, but those skilled in the art can manage Solve, the dough sheet of other shapes (such as polygon and circle etc.) can also be used in the middle of being embodied as institute Stating hot spot dough sheet, this is not construed as limiting by the present invention, and those skilled in the art can select according to actual needs.
Further, owing to graphics engine can't resolve tinter pre-cut when, thus will be considered that Model is all placed in world space, in order to prevent graphics engine from hot spot dough sheet is carried out pre-cut, and can be for institute State dough sheet and add bounding box, and the bounding box of dough sheet is arranged sufficiently large, can by as described in bounding box arrange Must be bigger than sky sylphon, the mistake cutting of graphics engine can be avoided by the skill arranging bounding box.
As it is shown in figure 5, described step S12 includes:
S121, by vertex shader extract described hot spot dough sheet projector space two-dimensional coordinate (such as, Xy coordinate), according to attribute and the aspect ratio information of screen of described hot spot dough sheet, adjustment output is arrived pixel and The apex coordinate (such as, xy value) of color device.
In the middle of being embodied as, position, scaling, color and the anglec of rotation of described hot spot dough sheet etc. belongs to Property data, can be set directly in patch model.Tinter is according to the attribute data of hot spot dough sheet and input Screen aspect ratio information adjusts the output xy value to pixel coloring device, it is ensured that it is empty that projector space is mapped to screen Between when, dough sheet is indeformable.
Further, in order to ensure that dough sheet is in screen foremost, can be by the third dimension of described hot spot dough sheet Degree coordinate is disposed closest to the value of camera lens.Such as, at OpenGL, (Open Graphics Library, opens Put shape library) in, z=-1 is the value near camera, can in vertex shader by output to pixel shader The z coordinate of device is appointed as-1.
S122, by described pixel coloring device by the texture of described hot spot dough sheet and color addition to described hot spot On dough sheet, obtain the color value of each pixel on described hot spot dough sheet.
For common graphics engine, what engine was responsible for is the scene of world space to be projected on screen.Draw Hold up and the function directly drawn on screen is not provided.And on screen, draw dough sheet (such as simple triangle Dough sheet, Quad Patch or other more complicated two-dimentional dough sheets) demand be exist, and this demand lead to Cross underlying graphics API (Application Programming Interface, application programming interface) to complete Being inconvenient, some graphics engines are not the most supported.Use the method that the present invention provides, it is only necessary to the fine arts Personnel carry out the dough sheet of needs, and the render pipeline provided by existing graphics engine can complete to render.This Vertex data is not multiplied in vertex shader by invention with world's matrix, camera matrix and projection matrix, light The coordinate system of speckle patch model vertex data and the coordinate system of projector space flush, the coordinate plane of the model space Map directly to the coordinate plane of projector space, the drafting of dough sheet can be completed simply and easily.
Further, described step S12 also includes:
S123, using the intensity of described hot spot dough sheet, texture index and color index as described hot spot dough sheet Third dimension information is input in tinter (including aforesaid vertex shader and pixel coloring device), to incite somebody to action All hot spot dough sheets are merged in a batch and draw.
See Fig. 7, be the method flow diagram of step S123 that embodiment provides as shown in Figure 5.
Graphics engine can provide the function that basic batch merges, it is possible to by " model is consistent ", but in the world In the different model instance such as locus, rotation and scaling merge, only submit to once to GPU Request, draws all of model instance.Here " model is consistent ", refers to the uniform of model tinter (specification) data the same (including texture).Therefore, the present invention merges in the following way and renders batch.
Preferred embodiment central in one, described step S123 includes:
S1231, is merged into a big texture by the texture used in each hot spot dough sheet, and forms corresponding stricture of vagina Reason index.
In a preferred embodiment, the hot spot dough sheet that fine arts personnel make is standard square dough sheet, dough sheet Positive direction is towards z-axis positive direction, and length and width are all 1, are centrally located at initial point, and texture coordinate is (0,0)~(1,1). Texture used in these square dough sheets can be spliced, be packaged into a big figure, and set up corresponding Texture indexes.As shown in Figure 8, for the big texture maps being spliced into by 4 textures, if upper left corner stricture of vagina The texture index of reason is (0,0), then the texture index of lower right corner texture is (N-1, M-1), and N is x direction The number of texture grid, M is the number of y direction texture grid.The present invention is made respectively by the merging of texture The data texturing of hot spot dough sheet is consistent, so that existing merging method can be used in subsequent step to carry out criticizing Secondary merging, and in render process, the concrete texture searched used by each hot spot dough sheet can be indexed by texture.
S1232, using the color data (rgb value) used in all hot spot dough sheets as specification (uniform) Data pass to described tinter.
In the middle of being embodied as, described color data can be split as three arrays according to RGB channel, pass through Uniform interface is sent to described tinter.Described color data is the color that all hot spot dough sheets may be used Set, when it needs to be determined that during the concrete color of some hot spot, can be according to the color index of described hot spot in institute State the color that in color data, lookup is corresponding with described color index.Existing merging renders in batch procedures, Requiring that the uniform data respectively rendering batch merged are identical, the present invention passes through said method so that all The uniform data of hot spot dough sheet are identical, and can render batch procedures by existing merging in subsequent step will All hot spots are merged in a batch and carry out drafting and render (as it was previously stated, existing merging renders batch side In method, it is desirable to the uniform data respectively rendering batch merged are identical).
S1233, is packaged into a floating number by texture index, color index and the intensity of described hot spot dough sheet and makees For the third dimension information of described hot spot dough sheet, it is input in described tinter.
In view of when drawing hot spot dough sheet to projector space, the data of a dimension are had not use (such as When hot spot dough sheet is parallel to x/y plane, the data of z-axis do not use), the present invention proposes a kind of method, Other attribute datas of hot spot are packaged in unnecessary third dimension, by tinter from many in drawing process Remaining dimension data resolves data.
If the texture index that hot spot dough sheet uses is (x_ind, y_ind), color index is c_ind, hot spot is strong Degree is I, it is contemplated that I must be a number less than 1, and a kind of preferably packing manner that the present invention uses is: x_ind*100+y_ind*10+c_ind+I.10*10 texture grid of most permission in aforesaid way, 10 Hot spot, can meet the demand of major part scene, and number of spots can also easily increase.
S1234, parses texture index, color index by described tinter from described third dimension information And intensity, from described large texture, search the texture corresponding with described texture index, from described color data Search the color corresponding with described color index, in a batch, all hot spot dough sheets are drawn.
According to the mode of packing, tinter can parse texture index, color index and hot spot simply and easily Intensity, and from described large texture, search the texture corresponding with described texture index, from described color data Search the color corresponding with described color index, and the anglec of rotation, scaling and the position of described hot spot dough sheet The information such as put is set directly on model, graphics engine can extracting directly, so that described hot spot dough sheet is painted System.By the way so that the render process of the present invention meets the required " model one of general merging batch Cause " requirement, can directly use the merging method that existing graphics engine provides, by all hot spot dough sheets Drafting is merged in a batch and carries out.
The present invention uses a kind of halation model that simplifies to calculate hot spot attribute, based on carry out drawing at projector space Tinter, is merged into a batch by rendering of halation, and amount of calculation is less, can be applicable to there is requirement of real time but Do not make excessive demands the field of physical reality.
See Fig. 9, be the flow chart of another embodiment of the generation method of the Lens Flare that the present invention provides. The present embodiment farther includes on the basis of Fig. 1 embodiment:
S13, obtains the product of both background pixel and hot spot pixel color value (rgb value), by described color The product of value mixes with described background pixel, it is thus achieved that mixed once result.
In the middle of being embodied as, enable mixed model glBlendFunc by OpenGL (BLEND_DESTCOLOR, GL_ONE).Assuming that background pixel is D, hot spot pixel is S, then The result obtained is exactly DS+D.
S14, mixes described mixed once result with described hot spot pixel, it is thus achieved that secondary mixing resultant.
In the middle of be embodied as, by OpenGL enable mixed model glBlendFunc (GL_ONE, GL_ONE), integrating step S13, then the result exported is DS+D+S.
S15, exports screen by described secondary mixing resultant and shows.
By twice drafting, add specific hybrid mode, can more preferably keep the saturation of halation, reach In bright background, also can see the effect of halation clearly, thus embody the color that halation itself is complicated.Above-mentioned mixing side Formula is only one preferred embodiment, and those skilled in the art can carry out balance choosing according to effect and performance Select, as when equipment performance deficiency, can be only with the cumulative hybrid mode of single color.
See Figure 10, be the structural representation of an embodiment of the generating means of the Lens Flare that the present invention provides Figure.The ultimate principle of the present embodiment is consistent with embodiment illustrated in fig. 1, part is not described in detail in detail in the present embodiment and can join Associated description in embodiment as shown in Figure 1.
The generating means of described Lens Flare includes:
MBM 11, for setting up halation model, in scene light source and optical center institute in three-dimensional scenic Straight line on one or more hot spot dough sheet is set, so that described light source is to the distance of described hot spot dough sheet Ratio set in advance is met with the ratio of distances constant of described light source to described optical center, and according to described light source Position, obtain in real time the attribute of described hot spot dough sheet in projector space.
Drafting module 12, for the attribute according to described hot spot dough sheet, right on the relevant position of projector space Described hot spot dough sheet is drawn.
Wherein, the attribute of described hot spot dough sheet includes position, scaling, color, intensity, the anglec of rotation With one or more in observability.Described MBM 11 includes:
Visibility judge unit 111, is used for obtaining position relationship before and after described light source and camera lens, and according to institute State front and back position relation, it is judged that the observability of described hot spot dough sheet.
Position calculation unit 112, for calculating the described light source projection coordinate at projector space, and according to described The projection coordinate of light source and described hot spot dough sheet location, calculate each hot spot dough sheet at projector space In position coordinates.
Strength co-mputation unit 113, for obtaining the distance of described light source and optical center, and according to described distance, Calculate the intensity of each hot spot dough sheet.
Rotate computing unit 114, for obtaining the angle that described light source rotates around described optical center at projector space Degree, using described angle as the anglec of rotation of described hot spot dough sheet.
For simulating the chromatic dispersion effects of hot spot, preferred embodiment central in one, the three of described hot spot dough sheet Individual Color Channel staggers on the line direction of described light source and described optical center, and the distance staggered is with described Hot spot dough sheet becomes positive correlation to the distance of described light source.
Preferred embodiment central in one, described hot spot dough sheet is parallel to one of them seat of world coordinates Mark plane.Described drafting module 12 includes:
Vertex processing unit 121, for extracting described hot spot dough sheet at the two of projector space by vertex shader Dimension coordinate, according to attribute and the aspect ratio information of screen of described hot spot dough sheet, adjustment output is arrived pixel and The apex coordinate of color device.
Pixel processing unit 122, for by described pixel coloring device by the texture of described hot spot dough sheet and color It is added on described hot spot dough sheet, obtains the color value of each pixel on described hot spot dough sheet.
Described drafting module 12 can further include:
Batch combining unit 123, for using the intensity of described hot spot dough sheet, texture index and color index as The third dimension information of described hot spot dough sheet is input in tinter, so that all hot spot dough sheets are merged into one Batch is drawn.
Preferred embodiment central in one, described pixel processing unit 122 is additionally operable to described hot spot face The third dimension coordinate of sheet is disposed closest to the value of camera lens.
In the middle of being embodied as, described batch combining unit 123 includes:
Texture merges subelement, for the texture used in each hot spot dough sheet is merged into a big texture, And form corresponding texture index;
Color transfer subelement, for passing the color data used in all hot spot dough sheets as specification data Pass described tinter;
Data packing subelement, for by the texture index of described hot spot dough sheet, color index and intensity packing Become a floating number as the third dimension information of described hot spot dough sheet, be input in described tinter;With,
Batch merges subelement, for parsing texture by described tinter from described third dimension information Index, color index and intensity, search the texture corresponding with described texture index from described large texture, from Described color data is searched the color corresponding with described color index, to all hot spot faces in a batch Sheet is drawn.
See Figure 11, be that the structure of another embodiment of the generating means of the Lens Flare that the present invention provides is shown It is intended to.The ultimate principle of the present embodiment is consistent with embodiment of the method shown in Fig. 9, and the present embodiment does not describes part in detail Can be found in the associated description in embodiment illustrated in fig. 9.
The present embodiment farther includes on the basis of embodiment illustrated in fig. 10:
Mixed once module 13, for obtaining the color value product of background pixel and hot spot pixel, by described face Colour product mixes with described background pixel, it is thus achieved that mixed once result.
Secondary mixing module 14, for described mixed once result being mixed with described hot spot pixel, obtains Obtain secondary mixing resultant.
Result display module 15, shows for described secondary mixing resultant is exported screen.
It should be noted that, device embodiment described above is only that schematically wherein said conduct divides Unit from part description can be or may not be physically separate, the parts shown as unit Can be or may not be physical location, i.e. may be located at a place, or can also be distributed to many On individual NE.Some or all of module therein can be selected according to the actual needs to realize this reality Execute the purpose of example scheme.It addition, in the device embodiment accompanying drawing of present invention offer, the connection between module is closed System represents have communication connection between them, specifically can be implemented as one or more communication bus or holding wire. Those of ordinary skill in the art, in the case of not paying creative work, are i.e. appreciated that and implement.
Through the above description of the embodiments, those skilled in the art is it can be understood that arrive this Bright can add the mode of required common hardware by software and realize, naturally it is also possible to be included by specialized hardware Special IC, dedicated cpu, private memory, special components and parts etc. realize.Generally, All functions completed by computer program can realize with corresponding hardware easily, and, it is used for The particular hardware structure realizing same function can also be diversified, such as analog circuit, digital circuit Or special circuit etc..But, the most more in the case of software program realize being more preferably embodiment party Formula.Based on such understanding, prior art is contributed by technical scheme the most in other words Part can embody with the form of software product, and this computer software product is stored in the storage that can read In medium, such as the floppy disk of computer, USB flash disk, portable hard drive, read only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disc or CD etc., Including some instructions with so that a computer equipment (can be personal computer, server, or net Network equipment etc.) perform the method described in each embodiment of the present invention.
The above, the only detailed description of the invention of the present invention, but protection scope of the present invention is not limited to This, any those familiar with the art, in the technical scope that the invention discloses, can readily occur in Change or replacement, all should contain within protection scope of the present invention.Therefore, protection scope of the present invention should It is as the criterion with described scope of the claims.

Claims (20)

1. the generation method of a Lens Flare, it is characterised in that including:
In three-dimensional scenic, set up halation model, the scene light source straight line with place, optical center arranges one Individual or multiple hot spot dough sheets so that described light source to the distance of described hot spot dough sheet with described light source to described The ratio of distances constant of optical center meets ratio set in advance, and according to the position of described light source, obtains in real time The attribute of described hot spot dough sheet in projector space;
According to the attribute of described hot spot dough sheet, described hot spot dough sheet is carried out by the relevant position of projector space Draw.
2. the generation method of Lens Flare as claimed in claim 1, it is characterised in that described hot spot dough sheet Attribute include one or more in position, scaling, color, intensity, the anglec of rotation and observability.
3. the generation method of Lens Flare as claimed in claim 2, it is characterised in that described in three dimensional field Scape is set up halation model, the scene light source straight line with place, optical center arranges one or more hot spot Dough sheet so that described light source to described hot spot dough sheet distance and described light source to described optical center away from From ratio meet ratio set in advance, and according to the position of described light source, obtain in projector space in real time The attribute of described hot spot dough sheet, including:
Obtain position relationship before and after described light source and camera lens, and according to described front and back position relation, it is judged that institute State the observability of hot spot dough sheet;
Calculate the described light source projection coordinate at projector space, and according to the projection coordinate of described light source and institute State hot spot dough sheet location, calculate each hot spot dough sheet position coordinates in projector space;
Obtain the distance of described light source and optical center, and according to described distance, calculate each hot spot dough sheet Intensity;
Obtain the angle that described light source rotates around described optical center at projector space, using described angle as institute State the anglec of rotation of hot spot dough sheet.
4. the generation method of Lens Flare as claimed in claim 1, it is characterised in that described hot spot dough sheet Three Color Channels stagger on the line direction of described light source and described optical center, the distance staggered with Described hot spot dough sheet becomes positive correlation to the distance of described light source.
5. the generation method of Lens Flare as claimed in claim 1, it is characterised in that described hot spot dough sheet It is parallel to one of them coordinate plane of world coordinates.
6. the generation method of Lens Flare as claimed in claim 5, it is characterised in that described in described basis The attribute of hot spot dough sheet, draws described hot spot dough sheet on the relevant position of projector space, including:
The described hot spot dough sheet two-dimensional coordinate at projector space is extracted, according to described hot spot by vertex shader The attribute of dough sheet and the aspect ratio information of screen, adjust the output apex coordinate to pixel coloring device;
By described pixel coloring device by the texture of described hot spot dough sheet and color addition to described hot spot dough sheet, Obtain the color value of each pixel on described hot spot dough sheet.
7. the generation method of Lens Flare as claimed in claim 6, it is characterised in that described by top Point Coloring device extracts the described hot spot dough sheet two-dimensional coordinate at projector space, according to the attribute of described hot spot dough sheet And the aspect ratio information of screen, after adjusting the apex coordinate that pixel coloring device is arrived in output, also include:
The third dimension coordinate of described hot spot dough sheet is disposed closest to the value of camera lens.
8. the generation method of Lens Flare as claimed in claim 6, it is characterised in that described in described basis The attribute of hot spot dough sheet, draws described hot spot dough sheet on the relevant position of projector space, also includes:
Using the intensity of described hot spot dough sheet, texture index and color index as the third dimension of described hot spot dough sheet Degree information is input in tinter, draws to be merged in a batch by all hot spot dough sheets.
9. the generation method of Lens Flare as claimed in claim 8, it is characterised in that described by described light The intensity of speckle dough sheet, texture index and color index are input to as the third dimension information of described hot spot dough sheet In described tinter, draw so that all hot spot dough sheets are merged in a batch, including:
Texture used in each hot spot dough sheet is merged into a big texture, and forms corresponding texture index;
Color data used in all hot spot dough sheets is passed to described tinter as specification data;
Texture index, color index and the intensity of described hot spot dough sheet are packaged into a floating number as described The third dimension information of hot spot dough sheet, is input in described tinter;
From described third dimension information, texture index, color index and intensity is parsed by described tinter, From described large texture, search the texture corresponding with described texture index, search and institute from described color data State the color that color index is corresponding, in a batch, all hot spot dough sheets are drawn.
10. the generation method of the Lens Flare as described in any one of claim 1~9, it is characterised in that The described attribute according to described hot spot dough sheet, is carried out described hot spot dough sheet on the relevant position of projector space After drafting, also include:
Obtain background pixel and the color value product of hot spot pixel, by described color value product and described background picture Element mixes, it is thus achieved that mixed once result;
Described mixed once result is mixed with described hot spot pixel, it is thus achieved that secondary mixing resultant;
Described secondary mixing resultant is exported screen show.
The generating means of 11. 1 kinds of Lens Flares, it is characterised in that including:
MBM, for setting up halation model, at scene light source and place, optical center in three-dimensional scenic Straight line on one or more hot spot dough sheet is set so that described light source to described hot spot dough sheet distance with Described light source meets ratio set in advance to the ratio of distances constant of described optical center, and according to described light source Position, obtains the attribute of described hot spot dough sheet in projector space in real time;With,
Drafting module, for the attribute according to described hot spot dough sheet, to institute on the relevant position of projector space State hot spot dough sheet to draw.
The generating means of 12. Lens Flares as claimed in claim 11, it is characterised in that described hot spot face The attribute of sheet includes the one in position, scaling, color, intensity, the anglec of rotation and observability or many Kind.
The generating means of 13. Lens Flares as claimed in claim 12, it is characterised in that described modeling mould Block includes:
Visibility judge unit, is used for obtaining position relationship before and after described light source and camera lens, and according to described Front and back position relation, it is judged that the observability of described hot spot dough sheet;
Position calculation unit, for calculating the described light source projection coordinate at projector space, and according to described light The projection coordinate in source and described hot spot dough sheet location, calculate each hot spot dough sheet in projector space Position coordinates;
Strength co-mputation unit, for obtaining the distance of described light source and optical center, and according to described distance, Calculate the intensity of each hot spot dough sheet;With,
Rotate computing unit, for obtaining the angle that described light source rotates around described optical center at projector space, Using described angle as the anglec of rotation of described hot spot dough sheet.
The generating means of 14. Lens Flares as claimed in claim 11, it is characterised in that described hot spot face Three Color Channels of sheet stagger on the line direction of described light source and described optical center, the distance staggered Positive correlation is become with the distance of described hot spot dough sheet to described light source.
The generating means of 15. Lens Flares as claimed in claim 11, it is characterised in that described hot spot face Sheet is parallel to one of them coordinate plane of world coordinates.
The generating means of 16. Lens Flares as claimed in claim 15, it is characterised in that described drafting mould Block includes:
Vertex processing unit, for extracting the described hot spot dough sheet two dimension at projector space by vertex shader Coordinate, according to attribute and the aspect ratio information of screen of described hot spot dough sheet, adjusts output to pixel shader The apex coordinate of device;With,
Pixel processing unit, for folding texture and the color of described hot spot dough sheet by described pixel coloring device It is added on described hot spot dough sheet, obtains the color value of each pixel on described hot spot dough sheet.
The generating means of 17. Lens Flares as claimed in claim 16, it is characterised in that described apex Reason unit is additionally operable to be disposed closest to the third dimension coordinate of described hot spot dough sheet the value of camera lens.
The generating means of 18. Lens Flares as claimed in claim 16, it is characterised in that described drafting mould Block, also includes:
Batch combining unit, is used for the intensity of described hot spot dough sheet, texture index and color index as institute The third dimension information stating hot spot dough sheet is input in tinter, so that all hot spot dough sheets to be merged into one batch Draw in secondary.
The generating means of 19. Lens Flares as claimed in claim 18, it is characterised in that described batch is closed And unit includes:
Texture merges subelement, for the texture used in each hot spot dough sheet is merged into a big texture, And form corresponding texture index;
Color transfer subelement, for passing the color data used in all hot spot dough sheets as specification data Pass described tinter;
Data packing subelement, for by the texture index of described hot spot dough sheet, color index and intensity packing Become a floating number as the third dimension information of described hot spot dough sheet, be input in described tinter;With,
Batch merges subelement, for parsing texture by described tinter from described third dimension information Index, color index and intensity, search the texture corresponding with described texture index from described large texture, from Described color data is searched the color corresponding with described color index, to all hot spot faces in a batch Sheet is drawn.
The generating means of 20. Lens Flares as described in any one of claim 11~19, it is characterised in that Described device also includes:
Mixed once module, for obtaining the color value product of background pixel and hot spot pixel, by described color Value product mixes with described background pixel, it is thus achieved that mixed once result;
Secondary mixing module, for mixing described mixed once result with described hot spot pixel, it is thus achieved that Secondary mixing resultant;With,
Result display module, shows for described secondary mixing resultant is exported screen.
CN201610283282.XA 2016-04-29 2016-04-29 A kind of generation method and device of Lens Flare Active CN105976423B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610283282.XA CN105976423B (en) 2016-04-29 2016-04-29 A kind of generation method and device of Lens Flare

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610283282.XA CN105976423B (en) 2016-04-29 2016-04-29 A kind of generation method and device of Lens Flare

Publications (2)

Publication Number Publication Date
CN105976423A true CN105976423A (en) 2016-09-28
CN105976423B CN105976423B (en) 2019-07-30

Family

ID=56993861

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610283282.XA Active CN105976423B (en) 2016-04-29 2016-04-29 A kind of generation method and device of Lens Flare

Country Status (1)

Country Link
CN (1) CN105976423B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106846454A (en) * 2017-01-17 2017-06-13 网易(杭州)网络有限公司 Lens Flare method for drafting and device
CN109529333A (en) * 2018-11-21 2019-03-29 北京像素软件科技股份有限公司 Lens Flare analogy method, Lens Flare simulator and terminal device
CN109885464A (en) * 2019-01-24 2019-06-14 腾讯科技(深圳)有限公司 A kind of data processing method and system based on open graphic library
CN112435323A (en) * 2020-11-26 2021-03-02 网易(杭州)网络有限公司 Light effect processing method, device, terminal and medium in virtual model

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003102990A (en) * 2001-09-30 2003-04-08 Sankyo Kk Game machine
CN1870055A (en) * 2006-06-27 2006-11-29 北京航空航天大学 High dynamic range material color applying drawing method
US20150070375A1 (en) * 2013-09-10 2015-03-12 Research & Business Foundation Sungkyunkwan University Methods and apparatuses of lens flare rendering using linear paraxial approximation, and methods and apparatuses of lens flare rendering based on blending
CN104930464A (en) * 2015-06-11 2015-09-23 横店集团得邦照明股份有限公司 Method for forming annular halo

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003102990A (en) * 2001-09-30 2003-04-08 Sankyo Kk Game machine
CN1870055A (en) * 2006-06-27 2006-11-29 北京航空航天大学 High dynamic range material color applying drawing method
US20150070375A1 (en) * 2013-09-10 2015-03-12 Research & Business Foundation Sungkyunkwan University Methods and apparatuses of lens flare rendering using linear paraxial approximation, and methods and apparatuses of lens flare rendering based on blending
CN104930464A (en) * 2015-06-11 2015-09-23 横店集团得邦照明股份有限公司 Method for forming annular halo

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
任鸿翔 等: "模拟器视景系统中太阳及镜头光晕的绘制", 《大连海事大学学报》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106846454A (en) * 2017-01-17 2017-06-13 网易(杭州)网络有限公司 Lens Flare method for drafting and device
CN109529333A (en) * 2018-11-21 2019-03-29 北京像素软件科技股份有限公司 Lens Flare analogy method, Lens Flare simulator and terminal device
CN109885464A (en) * 2019-01-24 2019-06-14 腾讯科技(深圳)有限公司 A kind of data processing method and system based on open graphic library
CN112435323A (en) * 2020-11-26 2021-03-02 网易(杭州)网络有限公司 Light effect processing method, device, terminal and medium in virtual model
CN112435323B (en) * 2020-11-26 2023-08-22 网易(杭州)网络有限公司 Light effect processing method, device, terminal and medium in virtual model

Also Published As

Publication number Publication date
CN105976423B (en) 2019-07-30

Similar Documents

Publication Publication Date Title
JP5531093B2 (en) How to add shadows to objects in computer graphics
Mattausch et al. Strategies for interactive exploration of 3D flow using evenly-spaced illuminated streamlines
CN103500465B (en) Ancient cultural relic scene fast rendering method based on augmented reality technology
CN107341853B (en) Virtual-real fusion method and system for super-large virtual scene and dynamic screen shooting
Behrendt et al. Realistic real-time rendering of landscapes using billboard clouds
US20060176303A1 (en) Systems and methods for the real-time and realistic simulation of natural atmospheric lighting phenomenon
US9183654B2 (en) Live editing and integrated control of image-based lighting of 3D models
CN105976423A (en) Method and device for generating lens flare
CN104091363A (en) Real-time size cloud computing method based on screen space
CN104103092A (en) Real-time dynamic shadowing realization method based on projector lamp
Kolivand et al. Covering photo-realistic properties of outdoor components with the effects of sky color in mixed reality
Sheng et al. A spatially augmented reality sketching interface for architectural daylighting design
Greenberg Computers and architecture
US7133052B1 (en) Morph map based simulated real-time rendering
CN118397160A (en) Autonomous three-dimensional rendering engine for reverse site building system of oil field site
Wang et al. Research and design of digital museum based on virtual reality
JP2003168130A (en) System for previewing photorealistic rendering of synthetic scene in real-time
Buchholz et al. Realtime non-photorealistic rendering of 3D city models
JP2002197485A (en) Achromic light writing in graphic system and method
CN116112657B (en) Image processing method, image processing device, computer readable storage medium and electronic device
Gee 3D in Photoshop: the ultimate guide for creative professionals
Chochlík Scalable multi-GPU cloud raytracing with OpenGL
CN114332406A (en) Display method for simulating real-time illumination of cultural relic 3D scanning model
CN114419215A (en) Processing method and device of volume cloud and electronic equipment
Kolivand et al. ReLiShaft: realistic real-time light shaft generation taking sky illumination into account

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant