एक छोटी सी देर यहाँ, लेकिन आप इसे जिस तरह से जावा खेल प्रोग्रामर करते हैं हमेशा सकता है, एक Screen
वर्ग के साथ:
public class Screen {
private int width, height;
public int[] pixels;
public Screen(int width, int height) {
this.width = width;
this.height = height;
pixels = new int[width * height];
}
public void render() {
for(int y = 0; y < height; y++) {
for(int x = 0; x < width; x++) {
pixels[x + y * width] = 0xFFFFFF; //make every pixel white
}
}
}
public void clear() {
for(int i = 0; i < pixels.length; i++) {
pixels[i] = 0; //make every pixel black
}
}
}
और फिर अपने मुख्य वर्ग में:
private Screen screen;
private BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
private int[] pixels = ((DataBufferInt) image.getRaster().getDataBuffer()).getData();
public void render() {
BufferStrategy bs = getBufferStrategy();
if (bs == null) {
createBufferStrategy(3);
return;
}
screen.clear();
screen.render();
for(int i = 0; i < pixels.length; i++) {
pixels[i] = screen.pixels[i];
}
Graphics g = bs.getDrawGraphics();
g.drawImage(image, 0, 0, getWidth(), getHeight(), null);
g.dispose();
bs.show();
}
यही चाहिए काम, मुझे लगता है।
दुर्भाग्य से जावा के पास एक बिंदु बनाने के लिए कोई विधि नहीं है, इसके बजाय आपको प्रारंभ और अंत दोनों के लिए एक ही बिंदु के साथ 'ड्रालाइन' का उपयोग करना होगा। –
@ExtremeCoders: वह एक पिटी है, और यह एक भयानक उपरांत नहीं जोड़ता है? मैं बस बड़े डेटासेट प्रदर्शित करने में सक्षम होना चाहता हूं .. –