我遇到-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
//UITextField *tf_phonenumber,*tf_userid;
if (textField.text<=10) {
char c=*[string UTF8String];
if (tf_phonenumber==textField) //PhoneNumber /Mobile Number
{
if ((c>='0' && c<='9')||(c==nil)) {
return YES;
}
else
return NO;
}
if (tf_userid==textField) //UserID validation
{
if ((c>='a' && c<='z')||(c>='A' && c<='Z')||(c==' ')||(c==nil)) {
return YES;
}
else
return NO;
}
return YES;
}
else{
return NO;
}
}
的问题。我制作了一个简单的2D游戏,玩家向敌人射击。我读到Box2D中的1个统一相当于1米所以我应该使用小尺寸。我将世界尺寸设置为160x90,但问题在于:
使用小尺寸我必须缩放设置为1280x720的相机,但正如您所看到的那样,形状有很大的质量下降,并且身体的运动也不再流动。即使世界步伐为1/300,最大速度仍然太慢!
declare
cursor c1 is <select your thing from table>;
begin
for r1 in c1
loop
dbms_output.put_line (r1.firstcolumn|| r2.anothercolumn );
end loop;
end;
已启用,缩放设置为0.125,您看到的正方形每边10个单位。
这是相机代码
Box2D
以下是绘制圆圈的类的代码
Vsinc
答案 0 :(得分:2)
不要使用PPM,我知道您可能已经看过很多使用PPM的教程,而是使用虚拟像素或马铃薯像素作为相机和box2d。在这里阅读这个精彩的article和这个answer。例如:
OrthographicCamera camera = new OrthographicCamera(20, 11);
此处20是WIDTH
的任意数字,HEIGHT
实际应为WIDTH*Gdx.graphics.getHeight()/Gdx.graphics.getWidth()
。
您不需要设置任何缩放级别,将其保留为默认值。
答案 1 :(得分:0)
您不必使用缩放来处理此问题 在这里我做了什么,它对我来说非常好
camera = new OrthographicCamera(SCREEN_WIDTH/PPM, Config.SCREEN_HEIGHT/PPM);
// fix camera to the center of the screen
camera.position.set(Config.SCREEN_WIDTH/PPM/2f, Config.SCREEN_HEIGHT/PPM/2f, 0);
camera.update();
我将转换单位(PPM)设为100
希望这很有帮助
祝你好运