- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我已经尝试了几种将圆圈绘制到生成坐标的解决方案。它不起作用,但我不知道 filledCircle 方法有什么问题?我该如何更换它?
留言:
FilledCircle cannot be resolved or is not a field
代码:
package com.example.game;
import com.badlogic.gdx.ApplicationAdapter;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.graphics.OrthographicCamera;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.Sprite;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
import com.badlogic.gdx.graphics.glutils.ShapeRenderer.ShapeType;
public class MainClass extends ApplicationAdapter {
SpriteBatch batch;
OrthographicCamera camera;
ShapeRenderer shapeRenderer;
private Sprite sprite;
@Override
public void create () {
shapeRenderer = new ShapeRenderer();
batch = new SpriteBatch();
}
@Override
public void render () {
Gdx.gl.glClearColor(1, 1, 1, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
Gdx.gl.glEnable(GL20.GL_BLEND);
Gdx.gl.glBlendFunc(GL20.GL_SRC_ALPHA, GL20.GL_ONE_MINUS_SRC_ALPHA);
Gdx.gl.glDisable(GL20.GL_BLEND);
batch.setProjectionMatrix(camera.combined);
batch.begin();
batch.draw(sprite, 200, 200, 64, 64);
shapeRenderer.begin(ShapeType.FilledCircle);
shapeRenderer.filledCircle(50, 50, 32);
shapeRenderer.setColor(Color.BLACK);
shapeRenderer.end();
batch.end();
}
}
最佳答案
begin(ShapeRenderer.ShapeType type)
方法接受一个 ShapeType
。有 3 Shapetypes :填充,线和点。没有像您正在使用的 FilledCircle
(这就是错误消息告诉您的内容)。
因此,您应该使用 shapeRenderer.begin(ShapeType.Filled);
另外,没有filledCircle()
方法。试试 shapeRenderer.circle(50, 50, 32);
。
编辑:
这是您的代码,没有一些错误。您需要理解它并完成一些部分,复制粘贴是行不通的。
@Override
public void create () {
shapeRenderer = new ShapeRenderer();
batch = new SpriteBatch();
camera = new OrthographicCamera(300, 480); //FILL THE VALUES HERE
sprite = new Sprite(new Texture(Gdx.files.internal("badlogic.jpg"))); //FILL THE VALUES HERE
sprite.setBounds(200, 200, 64, 64);
}
@Override
public void render () {
Gdx.gl.glClearColor(1, 1, 1, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
Gdx.gl.glEnable(GL20.GL_BLEND);
Gdx.gl.glBlendFunc(GL20.GL_SRC_ALPHA, GL20.GL_ONE_MINUS_SRC_ALPHA);
Gdx.gl.glDisable(GL20.GL_BLEND);
batch.setProjectionMatrix(camera.combined);
batch.begin();
sprite.draw(batch);
batch.end();
shapeRenderer.setColor(Color.BLACK);
shapeRenderer.begin(ShapeType.Filled);
shapeRenderer.circle(50, 50, 32);
shapeRenderer.end();
}
关于android - LibGDX ShapeRenderer 圆形绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26715986/
TL;DR 我的 ShapeRenderer 会渲染线条,但只是有时。 我看过这些帖子:LibGDX: ShapeRenderer drawing... nothing , Libgdx NESTED
我正在使用 libgdx 开发一个新应用程序,并且在我的源代码中我使用 shaperenderer 类,但是由于我购买了我的新平板电脑(Acer Iconia One 10 B3-A20),我的应用程
我不知道为什么 ShapeRenderer 对象没有在屏幕上绘制圆形。我尝试修改代码以包括建议,例如将 shaperenderer 对象的投影矩阵和变换矩阵更改为批处理矩阵,甚至在 shaperend
注意:我是 LibGdx 与 android 的新手。 我正在创建著名游戏 Color Switch 的克隆以供练习。 我使用 ShapeRenderer 来创建球和移动圆圈。在阅读了有关 Shape
我正在尝试使用 libgdx 形状渲染器绘制一条特定宽度的线。我关注了这个 link 问题是如果我指定更多的线宽,即超过 9,它不会显示增加的宽度。超过 9 或者我指定 20 或 100 像素,它将具
我决定使用 Libgdx ShapeRenderer 来绘制多边形。我想看看这有多高效,让相机在渲染时穿过 x 轴,但奇怪的事情发生了,请看这张图片: 在右侧,我没有移动相机,但在左侧,我通过移动相机
我正在尝试在 Libgdx 中创建圆角正方形我已经很好地绘制了正方形,现在在每个角上使用一个圆来绘制圆角 shapeRenderer.begin(ShapeType.Filled);
如何围绕中心旋转矩形?我在 ShapeRenderer 中找到了旋转功能: void rotate(float axisX, float axisY, float axisZ, float angle
我已经尝试了几种将圆圈绘制到生成坐标的解决方案。它不起作用,但我不知道 filledCircle 方法有什么问题?我该如何更换它? 留言: FilledCircle cannot be resolve
我使用 SpriteBatch 绘制纹理和 ShapeRenderer 绘制一些形状。 这是我在 Actor 中的代码 @Override public void draw(Batch batch,
当我使用 ShapeRenderer 时,它总是出现像素化。但如果我在 Photoshop 中以相同的尺寸绘制形状,它会非常平滑且干净。 我的方法如下: package com.me.actors;
我正在尝试让一个简单的矩形在屏幕上移动。我已经定义了我的对象并分离了更新和渲染的任务。我知道我必须在 Gamerenderer 中放置一些东西,但不知道使用什么代码来引用我的对象。任何帮助将非常感激。
我想在 shaperenderer 中绘制一个二维矩形。那没问题。但我想在这个矩形上创建一个自定义着色器。 所以我不需要纹理,我只想要一个带有自定义着色器的矩形。是否可以?怎么办? 我的矩形现在是渐变
我正在开发一款包含大量旋转变换的游戏,但我遇到了一个看似非常简单的问题 - 我认为我做错了什么。 我用 ShapeRenderer 绘制一个三角形,如下所示: shapeRend.begin(Shap
我已经使用顶点数组定义了一个形状: float[] points = new float[]{50,60,50,70,60,70, 60,60,50,60}; 我在这里画这个: shapeRende
我正在尝试使用带有此代码的 ShapeRenderer 来实现淡入淡出效果: Gdx.gl.glEnable(GL20.GL_BLEND); Gdx.g
我使用 ShapeRenderer 绘制了一个实心圆,现在我想将此圆绘制为透明圆。我正在使用以下代码来做到这一点:但圆圈并不透明。另外,我检查了 libgdx API 和 wiki,它说需要创建 Ca
我是 libgdx 新手。我正在尝试使用 libgdx 框架编写一个基本的 Android 游戏 是否有可能用给定的图像填充用 libgdx ShapeRenderer 绘制的矩形? 如果是,如何实现
我制作了一款小行星游戏,但在使用不同的屏幕尺寸时遇到了问题。是的,我知道视口(viewport),但就我而言,我认为这行不通。我尝试使用它,但我的对象不是图像。相反,它们是由 ShapeRendere
我正在尝试使用 LibGDX 上的类进行一些 JUnit 测试,但在尝试初始化所述类时遇到 NullPointerError,这可以追溯到使用 ShapeRenderer。 这是我初始化的类: imp
我是一名优秀的程序员,十分优秀!