Difference between revisions of "love.graphics (简体中文)"
Kunologist (talk | contribs) |
|||
(7 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
− | + | (译者注:love.graphics 是 LÖVE 的核心组件,是一切绘制的基础。但是如你所见,这个页面已经很久没有更新了。如果可能,不妨尝试翻译一下这个页面吧!) | |
− | love. | + | love.graphics 模块的主要功能是绘制(线段、图形、文字、图片 [[Image]]、[[Drawable]] 类型)到屏幕上。其次要功能是将外部文件(包括图片 [[Image]]、字体 [[Font]])加载到内存中,建立专门的对象管理在屏幕上绘制的几何图形(例如粒子系统 [[ParticleSystem]]、[[Framebuffer]])。 |
− | LÖVE | + | LÖVE 的坐标系统如下图所示,以左上角为原点((0,0)),横向延伸为 x 轴,纵向延伸为 y 轴。 |
− | |||
− | |||
[[File:lovecoordsystem.png|The LÖVE coordinate system]] | [[File:lovecoordsystem.png|The LÖVE coordinate system]] | ||
− | + | 通常,绘制的图片和图形都是以它们的左上角为起点。(如上图) | |
− | + | 坐标系统是图像在屏幕的某一位置显示的基础。有许多函数可以操作坐标系统。通过操作坐标,可以改变位置、大小、甚至旋转。 | |
− | |||
− | |||
− | |||
− | |||
− | |||
== Types == | == Types == | ||
Line 23: | Line 16: | ||
| ?Description | | ?Description | ||
}} | }} | ||
+ | |||
== Functions == | == Functions == | ||
− | {{#ask: [[Category:Functions]] [[parent::love.graphics]] [[Concept:Current]] | + | === Drawing === |
+ | {{#ask: [[Category:Functions]] [[parent::love.graphics (简体中文)]] [[Concept:Current]] [[Sub-Category::Drawing (简体中文)]] | ||
+ | | headers=hide | ||
+ | | limit=2000 | ||
+ | | format=template | ||
+ | | template=ListingFields | ||
+ | | introtemplate=ListingIntro | ||
+ | | outrotemplate=ListingOutro | ||
+ | | ?Description | ||
+ | | ?PrettySince | ||
+ | | ?PrettyRemoved | ||
+ | }} | ||
+ | ===Object Creation=== | ||
+ | {|class="wikitable" | ||
+ | |- | ||
+ | |[[love.graphics.newCanvas]]||创建一个新的画布 | ||
+ | |- | ||
+ | |[[love.graphics.newFont]]||加载一个新的字体 | ||
+ | |- | ||
+ | |[[love.graphics.newFramebuffer]]||创建一个新的帧缓冲区 | ||
+ | |- | ||
+ | |[[love.graphics.newImage]]||加载一个新的图像 | ||
+ | |- | ||
+ | |[[love.graphics.newImageFont]]||通过加载一个特定格式的图像创建一个新的字体 | ||
+ | |- | ||
+ | |[[love.graphics.newParticleSystem]]||创建一个新的粒子系统.好帅的哦! | ||
+ | |- | ||
+ | |[[love.graphics.newPixelEffect]]||创建一个新的像素效果 | ||
+ | |- | ||
+ | |[[love.graphics.newQuad]]||创建一个新的批发小图~ | ||
+ | |- | ||
+ | |[[love.graphics.newScreenshot]]||创建一个截图并返回数据 | ||
+ | |- | ||
+ | |[[love.graphics.newSpriteBatch]]||创建一个新的精灵图像组 | ||
+ | |- | ||
+ | |[[love.graphics.newStencil]]||创建一个新的模板 | ||
+ | |- | ||
+ | |[[love.graphics.setNewFont]]||创建并设置一个新的字体 | ||
+ | |} | ||
+ | |||
+ | === Graphics State === | ||
+ | {{#ask: [[Category:Functions]] [[parent::love.graphics]] [[Concept:Current]] [[Sub-Category::State]] | ||
+ | | headers=hide | ||
+ | | limit=2000 | ||
+ | | format=template | ||
+ | | template=ListingFields | ||
+ | | introtemplate=ListingIntro | ||
+ | | outrotemplate=ListingOutro | ||
+ | | ?Description | ||
+ | | ?PrettySince | ||
+ | | ?PrettyRemoved | ||
+ | }} | ||
+ | === Coordinate System(坐标系统) === | ||
+ | {{#ask: [[Category:Functions]] [[parent::love.graphics]] [[Concept:Current]] [[Sub-Category::Coordinate System]] | ||
+ | | headers=hide | ||
+ | | limit=2000 | ||
+ | | format=template | ||
+ | | template=ListingFields | ||
+ | | introtemplate=ListingIntro | ||
+ | | outrotemplate=ListingOutro | ||
+ | | ?Description | ||
+ | | ?PrettySince | ||
+ | | ?PrettyRemoved | ||
+ | }} | ||
+ | |||
+ | === Window === | ||
+ | {{#ask: [[Category:Functions]] [[parent::love.graphics]] [[Concept:Current]] [[Sub-Category::Window]] | ||
| headers=hide | | headers=hide | ||
| limit=2000 | | limit=2000 | ||
+ | | format=template | ||
+ | | template=ListingFields | ||
+ | | introtemplate=ListingIntro | ||
+ | | outrotemplate=ListingOutro | ||
| ?Description | | ?Description | ||
+ | | ?PrettySince | ||
+ | | ?PrettyRemoved | ||
}} | }} | ||
== Enums == | == Enums == | ||
{{#ask: [[Category:Enums]] [[parent::love.graphics]] [[Concept:Current]] | {{#ask: [[Category:Enums]] [[parent::love.graphics]] [[Concept:Current]] | ||
| headers=hide | | headers=hide | ||
+ | | format=template | ||
+ | | template=ListingFields | ||
+ | | introtemplate=ListingIntro | ||
+ | | outrotemplate=ListingOutro | ||
| ?Description | | ?Description | ||
+ | | ?PrettySince | ||
+ | | ?PrettyRemoved | ||
}} | }} | ||
[[Category:Modules]] | [[Category:Modules]] | ||
− | {{#set:Description= | + | {{#set:Description=绘制图形图片,管理屏幕显示.}} |
== See Also == | == See Also == | ||
* [[parent::love (简体中文)]] | * [[parent::love (简体中文)]] |
Latest revision as of 01:19, 26 March 2020
(译者注:love.graphics 是 LÖVE 的核心组件,是一切绘制的基础。但是如你所见,这个页面已经很久没有更新了。如果可能,不妨尝试翻译一下这个页面吧!)
love.graphics 模块的主要功能是绘制(线段、图形、文字、图片 Image、Drawable 类型)到屏幕上。其次要功能是将外部文件(包括图片 Image、字体 Font)加载到内存中,建立专门的对象管理在屏幕上绘制的几何图形(例如粒子系统 ParticleSystem、Framebuffer)。
LÖVE 的坐标系统如下图所示,以左上角为原点((0,0)),横向延伸为 x 轴,纵向延伸为 y 轴。
通常,绘制的图片和图形都是以它们的左上角为起点。(如上图)
坐标系统是图像在屏幕的某一位置显示的基础。有许多函数可以操作坐标系统。通过操作坐标,可以改变位置、大小、甚至旋转。
Contents
Types
Canvas | Off-screen render target. |
Drawable | Superclass for all things that can be drawn on screen. |
Font | Defines the shape of characters than can be drawn onto the screen. |
Framebuffer | Off-screen render target. |
Image | Drawable image type. |
Mesh | A 2D polygon mesh used for drawing arbitrary textured shapes. |
ParticleSystem | Used to create cool effects, like fire. |
PixelEffect | Pixel shader effect. |
Quad | A quadrilateral with texture coordinate information. |
Shader | Shader effect. |
SpriteBatch | Store image positions in a buffer, and draw it in one call. |
Text | Drawable text. |
Texture | Superclass for drawable objects which represent a texture. |
Video | A drawable video. |
Functions
Drawing
love.graphics.arc (简体中文) | Draws an arc.绘制一段弧. | 0.8.0 | |
love.graphics.checkMode (简体中文) | Checks if a display mode is supported.检查是否支持这种显示模式. | ||
love.graphics.circle (简体中文) | Draws a circle. | ||
love.graphics.draw (简体中文) | Draws objects on screen.在屏幕上绘制物件。 | ||
love.graphics.printf (简体中文) | Draws text on screen. If no Font is set, one will be created and set (once) if needed.绘制格式化过的文本,可折行显示、对齐。 |
Object Creation
love.graphics.newCanvas | 创建一个新的画布 |
love.graphics.newFont | 加载一个新的字体 |
love.graphics.newFramebuffer | 创建一个新的帧缓冲区 |
love.graphics.newImage | 加载一个新的图像 |
love.graphics.newImageFont | 通过加载一个特定格式的图像创建一个新的字体 |
love.graphics.newParticleSystem | 创建一个新的粒子系统.好帅的哦! |
love.graphics.newPixelEffect | 创建一个新的像素效果 |
love.graphics.newQuad | 创建一个新的批发小图~ |
love.graphics.newScreenshot | 创建一个截图并返回数据 |
love.graphics.newSpriteBatch | 创建一个新的精灵图像组 |
love.graphics.newStencil | 创建一个新的模板 |
love.graphics.setNewFont | 创建并设置一个新的字体 |
Graphics State
love.graphics.getBackgroundColor | Gets the current background color. | ||
love.graphics.getBlendMode | Gets the blending mode. | 0.2.0 | |
love.graphics.getCanvas | Returns the current target Canvas. | 0.8.0 | |
love.graphics.getColor | Gets the current color. | ||
love.graphics.getColorMask | Gets the active color components used when drawing. | 0.9.0 | |
love.graphics.getColorMode | Gets the color mode (which controls how images are affected by the current color). | 0.2.0 | 0.9.0 |
love.graphics.getDefaultFilter | Returns the default scaling filters used with Images, Canvases, and Fonts. | 0.9.0 | |
love.graphics.getDefaultImageFilter | Returns the default scaling filters. | 0.8.0 | 0.9.0 |
love.graphics.getDepthMode | Gets the current depth test mode and whether writing to the depth buffer is enabled. | 11.0 | |
love.graphics.getFont | Gets the current Font object. | 0.9.0 | |
love.graphics.getFrontFaceWinding | Gets whether triangles with clockwise- or counterclockwise-ordered vertices are considered front-facing. | 11.0 | |
love.graphics.getLineJoin | Gets the line join style. | ||
love.graphics.getLineStipple | Gets the current line stipple. | 0.8.0 | |
love.graphics.getLineStyle | Gets the line style. | 0.3.2 | |
love.graphics.getLineWidth | Gets the current line width. | 0.3.2 | |
love.graphics.getMeshCullMode | Gets whether back-facing triangles in a Mesh are culled. | 11.0 | |
love.graphics.getPixelEffect | Returns the current PixelEffect. | 0.8.0 | 0.9.0 |
love.graphics.getPointSize | Gets the point size. | ||
love.graphics.getPointStyle | Gets the current point style. | 0.10.0 | |
love.graphics.getScissor | Gets the current scissor box. | 0.4.0 | |
love.graphics.getShader | Gets the current Shader. | 0.9.0 | |
love.graphics.getStackDepth | Gets the current depth of the transform / state stack (the number of pushes without corresponding pops). | 11.0 | |
love.graphics.getStencilTest | Gets the current stencil test configuration. | 0.10.0 | |
love.graphics.intersectScissor | Sets the scissor to the rectangle created by the intersection of the specified rectangle with the existing scissor. | 0.10.0 | |
love.graphics.isActive | Gets whether the graphics module is able to be used. | 0.10.0 | |
love.graphics.isGammaCorrect | Gets whether gamma-correct rendering is enabled. | 0.10.0 | |
love.graphics.isSupported | Checks for the support of graphics related functions. | 0.8.0 | 0.10.0 |
love.graphics.isWireframe | Gets whether wireframe mode is used when drawing. | 0.9.1 | |
love.graphics.reset | Resets the current graphics settings. | ||
love.graphics.setBackgroundColor | Sets the background color. | ||
love.graphics.setBlendMode | Sets the blending mode. | 0.2.0 | |
love.graphics.setCanvas | Captures drawing operations to a Canvas | 0.8.0 | |
love.graphics.setColor | Sets the color used for drawing. | ||
love.graphics.setColorMask | Sets the color mask. Enables or disables specific color components when rendering. | 0.9.0 | |
love.graphics.setColorMode | Sets the color mode (which controls how images are affected by the current color). | 0.2.0 | 0.9.0 |
love.graphics.setDefaultFilter | Sets the default scaling filters used with Images, Canvases, and Fonts. | 0.9.0 | |
love.graphics.setDefaultImageFilter | Sets the default scaling filters. | 0.8.0 | 0.9.0 |
love.graphics.setDepthMode | Configures depth testing and writing to the depth buffer. | 11.0 | |
love.graphics.setFont | Set an already-loaded Font as the current font. | ||
love.graphics.setFrontFaceWinding | Sets whether triangles with clockwise- or counterclockwise-ordered vertices are considered front-facing. | 11.0 | |
love.graphics.setInvertedStencil | Defines an inverted stencil. | 0.8.0 | 0.10.0 |
love.graphics.setLine | Sets the line width and style. | 0.9.0 | |
love.graphics.setLineJoin | Sets the line join style. | ||
love.graphics.setLineStipple | Sets the line stipple pattern. | 0.8.0 | |
love.graphics.setLineStyle | Sets the line style. | 0.3.2 | |
love.graphics.setLineWidth | Sets the line width. | 0.3.2 | |
love.graphics.setMeshCullMode | Sets whether back-facing triangles in a Mesh are culled. | 11.0 | |
love.graphics.setPixelEffect | Routes drawing operations through a pixel shader. | 0.8.0 | 0.9.0 |
love.graphics.setPoint | Sets the point size and style. | 0.9.0 | |
love.graphics.setPointSize | Sets the point size. | ||
love.graphics.setPointStyle | Sets the point style. | 0.10.0 | |
love.graphics.setRenderTarget | Captures drawing operations to a Framebuffer | 0.7.0 | 0.8.0 |
love.graphics.setScissor | Sets or disables scissor. | 0.4.0 | |
love.graphics.setShader | Routes drawing operations through a shader. | 0.9.0 | |
love.graphics.setStencil | Defines or releases a stencil. | 0.8.0 | 0.10.0 |
love.graphics.setStencilTest | Configures or disables stencil testing. | 0.10.0 | |
love.graphics.setWireframe | Sets whether wireframe lines will be used when drawing. | 0.9.1 |
Coordinate System(坐标系统)
love.graphics.applyTransform | Applies the given Transform object to the current coordinate transformation. | 11.0 | |
love.graphics.inverseTransformPoint | Converts the given 2D position from screen-space into global coordinates. | 11.0 | |
love.graphics.origin | Resets the current coordinate transformation. | 0.9.0 | |
love.graphics.pop | Pops the current coordinate transformation from the transformation stack. | ||
love.graphics.push | Copies and pushes the current coordinate transformation to the transformation stack. | ||
love.graphics.replaceTransform | Replaces the current coordinate transformation with the given Transform object. | 11.0 | |
love.graphics.rotate | Rotates the coordinate system in two dimensions. | ||
love.graphics.scale | Scales the coordinate system in two dimensions. | ||
love.graphics.shear | Shears the coordinate system. | 0.8.0 | |
love.graphics.transformPoint | Converts the given 2D position from global coordinates into screen-space. | 11.0 | |
love.graphics.translate | Translates the coordinate system in two dimensions. |
Window
love.graphics.checkMode | Checks if a display mode is supported. | 0.9.0 | |
love.graphics.getCaption | Gets the window caption. | 0.9.0 | |
love.graphics.getDPIScale | Gets the DPI scale factor of the window. | 11.0 | |
love.graphics.getDimensions | Gets the width and height of the window. | 0.9.0 | |
love.graphics.getHeight | Gets the height in pixels of the window. | 0.2.1 | |
love.graphics.getMode | Returns the current display mode. | 0.8.0 | 0.9.0 |
love.graphics.getModes | Gets a list of supported fullscreen modes. | 0.9.0 | |
love.graphics.getPixelDimensions | Gets the width and height in pixels of the window. | 11.0 | |
love.graphics.getPixelHeight | Gets the height in pixels of the window. | 11.0 | |
love.graphics.getPixelWidth | Gets the width in pixels of the window. | 11.0 | |
love.graphics.getWidth | Gets the width in pixels of the window. | 0.2.1 | |
love.graphics.hasFocus | Checks if the game window has keyboard focus. | 0.8.0 | 0.9.0 |
love.graphics.isCreated | Checks if the window has been created. | 0.9.0 | |
love.graphics.setCaption | Sets the window caption. | 0.9.0 | |
love.graphics.setIcon | Set window icon. | 0.7.0 | 0.9.0 |
love.graphics.setMode | Changes the display mode. | 0.9.0 | |
love.graphics.toggleFullscreen | Toggles fullscreen. | 0.9.0 |
Enums
AlignMode | Text alignment. | ||
ArcType | Different types of arcs that can be drawn. | 0.10.1 | |
AttributeDataType | Data types used in a Mesh's vertex format. | 0.9.0 | |
BlendAlphaMode | Different ways alpha affects color blending. | 0.10.0 | |
BlendMode | Different ways to do color blending. | 0.2.0 | |
BufferDataUsage | Usage hints for SpriteBatches, Meshes, and GraphicsBuffers to optimize data storage and access. | 0.8.0 | |
CanvasFormat | Canvas texture formats. | 0.9.0 | |
ColorMode | Controls how drawn images are affected by current color. | 0.2.0 | 0.9.0 |
CompareMode | Different types of stencil test and depth test comparisons. | 0.10.0 | |
CullMode | How Mesh geometry is culled when rendering. | 11.0 | |
DrawMode | Controls whether shapes are drawn as an outline, or filled. | ||
FilterMode | How the image is filtered when scaling. | ||
GraphicsFeature | Graphics features that can be checked for with love.graphics.getSupported. | 0.8.0 | |
GraphicsLimit | Types of system-dependent graphics limits. | 0.9.1 | |
IndexDataType | Vertex map datatype. | 11.0 | |
LineJoin | Line join style. | ||
LineStyle | The styles in which lines are drawn. | ||
MeshDrawMode | How a Mesh's vertices are used when drawing. | 0.9.0 | |
MipmapMode | Controls whether a Canvas has mipmaps, and its behaviour when it does. | 11.0 | |
PixelFormat | Pixel formats for Textures, ImageData, and CompressedImageData. | 11.0 | |
PointStyle | How points should be drawn. | 0.10.0 | |
StackType | Graphics state stack types used with love.graphics.push. | 0.9.2 | |
StencilAction | How a stencil function modifies the stencil values of pixels it touches. | 0.10.0 | |
TextureFormat | Controls the canvas texture format. | 0.9.0 | 0.10.0 |
TextureType | Types of textures (2D, cubemap, etc.) | 11.0 | |
VertexAttributeStep | The frequency at which a vertex shader fetches the vertex attribute's data from the Mesh when it's drawn. | 11.0 | |
VertexWinding | Vertex winding. | 11.0 | |
WrapMode | How the image wraps inside a large Quad. |
See Also
Other Languages
Dansk –
Deutsch –
English –
Español –
Français –
Indonesia –
Italiano –
Lietuviškai –
Magyar –
Nederlands –
Polski –
Português –
Română –
Slovenský –
Suomi –
Svenska –
Türkçe –
Česky –
Ελληνικά –
Български –
Русский –
Српски –
Українська –
עברית –
ไทย –
日本語 –
正體中文 –
简体中文 –
Tiếng Việt –
한국어
More info