我想得到两个整数,一个除以另一个得到小数或百分比.如何获得这两个整数的百分比或小数?(我不确定它是否正确......我可能会离开...)例如:
int correct = 25;
int questionNum = 100;
float percent = correct/questionNum *100;
Run Code Online (Sandbox Code Playgroud)
这就是我认为我能做到的,但是它不起作用......我想把十进制(如果有的话)变成100的百分比,例如在这种情况下它是%25.任何人的想法?
这是正确的代码(感谢Salvatore Previti!):
float correct = 25;
float questionNum = 100;
float percent = (correct * 100.0f) / questionNum;
Run Code Online (Sandbox Code Playgroud)
(顺便说一下,我正在用一个项目来进行测验检查程序,这就是我需要百分比或小数的原因)
这是一个严肃的问题,我在理解它与完全没有之间"陷入困境".我对阅读不同资源的时间非常困惑,并希望有人指出我正确的方向.
我正在使用Android平台,直到现在我已经使用了Canvas
一些OpenGL ES 1.0
,但主要是通过引擎或已经构建的代码来尝试和理解它.
我的目标是实际理解OpenGL ES 2.0
.我不想直接去复杂的东西,从简单的东西开始,但我只是不知道怎么做.我可以得到一个正方形,我可以设置相机和矩阵; 告诉你实话我真的不明白整个矩阵系统及其工作原理,如果我是对的,它是一个固定功能管道,你不需要改变OpenGL ES 1.0
但现在它是一个可编程管道你必须自己设置.
我不知道如何使用坐标系,我知道原点是设备的中心,每次转向边缘都是1,所以从中心到左边它将是负1.
然而,有一些方法可以将它变成一个不同的坐标系,也许只是使用比例或乘法矩阵来将协调设置为我曾经习惯的东西Canvas
.
基本上我需要帮助的是如何从这里进步?我觉得好像到了某个地方,但我仍然无处可去.
我真的需要一些关于如何正确使用的建议OpenGL ES 2.0
,因为现在我正在计划的是一个简单的2D游戏,也许是侧滚动,所以我将不得不弄乱相机矩阵.
感谢您的时间,我将非常感谢您的帮助.
*我对转换矩阵不太感兴趣,因为我不认为2D游戏真的会使用它,也许只有当我镜像角色的精灵所以它看起来好像他走的是另一个方向,但我很确定通过改变协调和宽度可以使这变得简单.
我试图将我的纹理映射到在opengl es 2.0中制作的正方形,当我这样做时,纹理上下颠倒,我的映射是错误的吗?还是我画的方式?这是一张它的样子:
这是我的onDrawFrame代码()
public void onDrawFrame(GL10 glUnused) {
GLES20.glClearColor(0.0f, 0.0f, 1.0f, 1.0f);
GLES20.glClear(GLES20.GL_DEPTH_BUFFER_BIT | GLES20.GL_COLOR_BUFFER_BIT);
GLES20.glUseProgram(mProgram);
GLES20.glEnable(GLES20.GL_BLEND);
GLES20.glBlendFunc(GLES20.GL_ONE, GLES20.GL_ONE_MINUS_SRC_ALPHA);
GLES20.glActiveTexture(GLES20.GL_TEXTURE0);
GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, mTextureID);
mTriangleVertices.position(TRIANGLE_VERTICES_DATA_POS_OFFSET);
GLES20.glVertexAttribPointer(maPositionHandle, 3, GLES20.GL_FLOAT,
false, TRIANGLE_VERTICES_DATA_STRIDE_BYTES, mTriangleVertices);
mTriangleVertices.position(TRIANGLE_VERTICES_DATA_UV_OFFSET);
GLES20.glEnableVertexAttribArray(maPositionHandle);
GLES20.glVertexAttribPointer(maTextureHandle, 2, GLES20.GL_FLOAT,
false, TRIANGLE_VERTICES_DATA_STRIDE_BYTES, mTriangleVertices);
GLES20.glEnableVertexAttribArray(maTextureHandle);
Matrix.orthoM(mProjMatrix, 0, 0, 200, 0, 100, -5, 5);
GLES20.glUniformMatrix4fv(muMVPMatrixHandle, 1, false, mProjMatrix, 0);
GLES20.glDrawElements(GLES20.GL_TRIANGLES, drawOrder.length,
GLES20.GL_UNSIGNED_SHORT, drawListBuffer);
}
Run Code Online (Sandbox Code Playgroud)
方形和映射UV的协调是:
private final float[] mTriangleVerticesData = {
// X, Y, Z, U, V
0f, 0f, 0, 0.0f, 0.0f,
50f, 0f, 0, 1.0f, 0.0f, …
Run Code Online (Sandbox Code Playgroud) 我想为我的游戏节省内存,我想问你,因为我找不到任何东西,上次我问了一些问题,我得到了一个很好的答案.我可以在eclipse中翻转位图,这样我可以节省精灵的内存吗?我发现的所有教程都是关于旋转而不是翻转.翻转位图的教程仅适用于开放式Gl或类似的东西.请帮我.我一直在寻找谷歌的教程,但我在第5页放弃了.任何人都可以帮助我吗?有没有人有一个很好的教程?顺便说一句,我正在使用画布.谢谢!
每当我试图运行它时,我都会收到一个力量......你可以搞清楚吗?这是我的代码:
Matrix flipHorizontalMatrix = new Matrix();
flipHorizontalMatrix.setScale(-1,1);
flipHorizontalMatrix.postTranslate(0, canvas.getHeight()-arrowL.getHeight());
canvas.drawBitmap(arrowL, flipHorizontalMatrix, null);
Run Code Online (Sandbox Code Playgroud)
我希望箭头位于右下角.
我想在android中处理multiTouch,我的计划是在应用程序中使用2个手指.我知道如何使用一个触摸点,但我不确定如何使用多个触点.
这是我的代码,OnTouch:
public boolean onTouch(View view, MotionEvent event) {
for(int i = 0; i < event.getPointerCount(); i++){
float x = event.getX(i);
float y = event.getY(i);
// using the data here...
//....
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
现在我得到每个点的x和y坐标后,我将如何得到发生的动作?我想使用event.getAction
,但它不采用点索引等参数.我怎样才能获得每个触摸点的动作类型?
更新:好的,所以现在我可以成功管理和处理两个手指,现在,在我完成之后,我做了一个简单的类Finger
来处理每个触摸点,现在每当我有两个手指在屏幕上,我尝试删除其中一个,然后移动/删除另一个手指,游戏只是崩溃!
OnTouch:
public boolean onTouch(View view, MotionEvent event) {
int pointerCount = event.getPointerCount();
if(pointerCount > 2){
pointerCount = 2;
System.out.println("too many fingers!");
} // since i want to handle only two fingers, every other finger will be ignored.
for (int …
Run Code Online (Sandbox Code Playgroud) 我想检查是否使用JavaScript/jQuery选中了某个复选框.
这是我试过的代码:
var a;
if ($("#add_desc").checked == 1){
a = "true";
}else{
a= "false";
}
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
var a;
if ($("#add_desc").checked){
a= "true";
}else{
a= "false";
}
Run Code Online (Sandbox Code Playgroud)
一旦我警告变量,它总是返回false a
.
知道为什么它对我不起作用吗?我做错了吗?
谢谢!
我想做一个mmorpg游戏,我想在开始之前知道一些事情
,首先,我知道如何为Android制作游戏,我一直在使用canvas,opengl es 1.0/1.1和一些andengine(也是opengl) es 1.0/1.1).我想知道我应该使用什么来获得一个好的可靠和快速的mmorpg,还有其他选择可以获得更好的性能吗?
该游戏目前只针对Android,我使用android sdk和eclipse来编程我的游戏.
另外,我在哪里可以学习如何制作合适的客户端和服务器?因为我从未有过这方面的经验.直到现在我只制作了2d和一些3D游戏,其中没有一个在线或任何类型的mmo.
如果需要,我也有一些网站开发的sql和php经验.我和PhpMyAdmin合作过我的网站.
谢谢!
android ×5
matrix ×2
opengl-es ×2
canvas ×1
checkbox ×1
client ×1
decimal ×1
flip ×1
game-engine ×1
html ×1
int ×1
java ×1
javascript ×1
jquery ×1
mmo ×1
multi-touch ×1
sprite ×1
textures ×1
touch-event ×1
touchscreen ×1