美文网首页LibGDX
LibGDX图形模块开篇

LibGDX图形模块开篇

作者: 天神Deity | 来源:发表于2017-09-10 22:02 被阅读11次

此页面需要重写。

介绍

图形模块提供有关当前设备显示和应用程序窗口的信息,以及有关当前OpenGL上下文的信息和访问。 具体来说,可以在该类中找到关于屏幕尺寸,像素密度和帧缓冲器属性(诸如颜色深度,深度/模板缓冲器和抗锯齿功能)的信息。 与其他常用模块一样,通过Gdx class.的静态字段提供访问。

OpenGL上下文
此模块的特定用途 涉及通过较底层的命令更直接地访问当前的OpenGL上下文。
以下示例访问OpenGL ES2应用程序中的上下文以设置视口并清除帧和深度缓冲区:

Gdx.gl20.glViewport( 0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight() );
Gdx.gl20.glClearColor( 0, 0, 0, 1 );
Gdx.gl20.glClear( GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT );

请注意,使用getWidth()/ getHeight()来访问当前应用程序窗口维度,并将其设置为GL20类中视口的常量值,就像在常规OpenGL程序中一样。 Libgdx的一个关键优势是能够访问底层的功能,因为高级抽象并不足够。

每个版本的OpenGL ES都可以通过其各自的接口以及GLCommon接口调用新增的命令。 请注意,使用GL20需要指示应用程序在启动时使用OpenGL ES2(因为默认不启用)。

帧时间

Graphics类中一个特别有用的方法是getDeltaTime(),它提供自上一个渲染帧以来经过的时间。 这对于基于时间的动画可能是有用的。 例如舞台实例中的Actor或UI动画可能由应用程序的渲染方法中的以下代码控制:

stage.act( Math.min( Gdx.graphics.getDeltaTime(), 1/30 ) );

尽管getDeltaTime()可以用于简单动画,但它仍然是依赖于帧的,并且诸如游戏逻辑或物理模拟的更敏感的动作可能有其他更好的的时序策略。
另一个有用的方法是getFramesPerSecond(),它返回当前帧速率的运行平均值,用于简单的诊断目的。 但是对于更严重的分析工作,建议使用FPSLogger。

平台差异性

在桌面上,Graphics类还提供了设置窗口图标和标题值的功能,方法setDisplayMode()和setVSync()将显示模式设置为全屏/窗口,并分别启用/禁用垂直显示同步。 显然这些方法对缺少图标或标题的平台没有影响。请记住,这些方法仅在某些平台上有效果。

相关文章

  • LibGDX图形模块开篇

    此页面需要重写。 介绍 图形模块提供有关当前设备显示和应用程序窗口的信息,以及有关当前OpenGL上下文的信息和访...

  • LibGDX音频模块开篇

    Libgdx提供播放音效(sound,短小精悍的音频文件)以及音乐片段(文件较大,一般在10秒以上)的方法,它还为...

  • LibGDX图形模块之剖析

    本文介绍的实用工具可能会派上用场,以防遇到性能问题,并需要开始分析你的游戏。 FPSLogger FPSLogge...

  • LibGDX图形模块之Ninepatches

    本文介绍了NinePatch图像,如何创建它们以及如何在Libgdx上下文中使用它们。 在你开始之前 本指南适用于...

  • LibGDX图形模块之清屏

    要清除Libgdx中的屏幕与在常规OpenGL应用程序中清除屏幕是不同的。 唯一的区别在于如何访问OpenGL上下...

  • LibGDX图形模块之网格

    网格是一组顶点(和可选的索引)的组合,它们描述了用于渲染的几何图形。 顶点以顶点缓冲对象(VBOs)的形式保存在V...

  • LibGDX图形模块之截屏

    使用以下代码可以截屏:

  • LibGDX图形模块之视口

    当处理不同的屏幕时,通常需要决定采取何种策略来处理不同屏幕尺寸和宽高比.Camera 和Stage 支持不同的视口...

  • LibGDX图形模块之位图字体

    LibGdx使用位图文件(png)来渲染字体。 字体中的每个字形都具有相应的纹理区域。BitmapFont cla...

  • LibGDX图形模块之正交相机

    本页介绍了OrthographicCamera类和用法。 正交相机仅在2D环境中使用,因为它实现了平行(正投影)投...

网友评论

    本文标题:LibGDX图形模块开篇

    本文链接:https://www.haomeiwen.com/subject/etgtsxtx.html