আমি এলডাব্লুজেজিএল এর মাধ্যমে ওপেনজিএল ব্যবহার করছি।
আমার 16x16 টেক্সচার্ড কোয়াড রেন্ডারিং রয়েছে। আমি যখন এর স্কেলের পরিমাণ পরিবর্তন করি তখন কোয়াড বৃদ্ধি পায়, তত বড় হওয়ার সাথে সাথে ঝাপসা হয়ে যায়।
আমি মাইনক্রাফ্টের মতো ঝাপসা হয়ে না গিয়ে কীভাবে এটি স্কেল করতে পারি।
আমার রেন্ডারেবল এন্টিটি অবজেক্টের ভিতরে কোডটি এখানে রয়েছে:
public void render(){
Color.white.bind();
this.spriteSheet.bind();
GL11.glBegin(GL11.GL_QUADS);
GL11.glTexCoord2f(0,0);
GL11.glVertex2f(this.x, this.y);
GL11.glTexCoord2f(1,0);
GL11.glVertex2f(getDrawingWidth(), this.y);
GL11.glTexCoord2f(1,1);
GL11.glVertex2f(getDrawingWidth(), getDrawingHeight());
GL11.glTexCoord2f(0,1);
GL11.glVertex2f(this.x, getDrawingHeight());
GL11.glEnd();
}
এবং এখানে আমার গেম ক্লাসে আমার initGL পদ্ধতি থেকে কোড
GL11.glEnable(GL11.GL_TEXTURE_2D);
GL11.glClearColor(0.46f,0.46f,0.90f,1.0f);
GL11.glViewport(0,0,width,height);
GL11.glOrtho(0,width,height,0,1,-1);
এবং এখানে কোড যা আসল অঙ্কন করে
public void start(){
initGL(800,600);
init();
while(true){
GL11.glClear(GL11.GL_COLOR_BUFFER_BIT);
for(int i=0;i<entities.size();i++){
((RenderableEntity)entities.get(i)).render();
}
Display.update();
Display.sync(100);
if(Display.isCloseRequested()){
Display.destroy();
System.exit(0);
}
}
}