質問編集履歴

2

前置きで一応書いたのですが、分かりにくかったらしいので、ループ文を何故記述したいのかを完結に纏めて下記に付け足しました、本当に申し訳ありません。

2019/04/27 02:39

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -261,3 +261,9 @@
261
261
  ## 開発環境
262
262
 
263
263
  OS:Windows10 OpenGLライブラリ:GL2 (JOGL)
264
+
265
+
266
+
267
+ ## 何故ループ文を定義したいのかについて
268
+
269
+ 要するに前置きでも言った桃李ゲームプログラムを書きたいので、ループ文を記述したり(定義したい)という事です。

1

ソースコードの追記。

2019/04/27 02:39

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -5,3 +5,259 @@
5
5
 
6
6
 
7
7
  よろしければその方法を教えて頂けませんか?。
8
+
9
+
10
+
11
+ ちなみに、現在記述途中のソースコードはこちらです。
12
+
13
+ ```Java
14
+
15
+ import com.jogamp.opengl.GL2;
16
+
17
+ import com.jogamp.opengl.GLAnimatorControl;
18
+
19
+ import com.jogamp.opengl.GLAutoDrawable;
20
+
21
+ import com.jogamp.opengl.GLCapabilities;
22
+
23
+ import com.jogamp.opengl.GLEventListener;
24
+
25
+ import com.jogamp.opengl.GLProfile;
26
+
27
+ import com.jogamp.opengl.awt.GLCanvas;
28
+
29
+ import javax.swing.*;
30
+
31
+
32
+
33
+ import java.awt.event.KeyListener;
34
+
35
+ import java.awt.event.KeyEvent;
36
+
37
+
38
+
39
+ public class Main extends JFrame implements KeyListener, Runnable, GLEventListener {
40
+
41
+
42
+
43
+ private static final long serialVersionUID = 1L;
44
+
45
+ public static boolean Game = true;
46
+
47
+
48
+
49
+ public static void main(String[] args){
50
+
51
+
52
+
53
+ Main mt = new Main();
54
+
55
+ Thread thread = new Thread(mt);
56
+
57
+ thread.start();
58
+
59
+
60
+
61
+ //getting the capabilities object of GL2 profile
62
+
63
+ final GLProfile profile = GLProfile.get(GLProfile.GL2);
64
+
65
+ GLCapabilities capabilities = new GLCapabilities(profile);
66
+
67
+
68
+
69
+ // The canvas
70
+
71
+ final GLCanvas glcanvas = new GLCanvas(capabilities);
72
+
73
+
74
+
75
+ Main b = new Main();
76
+
77
+ glcanvas.addGLEventListener(b);
78
+
79
+ glcanvas.setSize(800, 700);
80
+
81
+ //creating frame
82
+
83
+ final JFrame frame = new JFrame (" Shooting game");
84
+
85
+ //adding canvas to it
86
+
87
+ frame.getContentPane().add(glcanvas);
88
+
89
+ frame.setSize(frame.getContentPane().getPreferredSize());
90
+
91
+ frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
92
+
93
+ //ImageIcon icon = new ImageIcon ("./icon.png") ;
94
+
95
+ //frame.setIconImage(icon.getImage());
96
+
97
+ frame.setLocationRelativeTo(null);
98
+
99
+ frame.setVisible(true);
100
+
101
+ }
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+ @Override
110
+
111
+ public void run(){
112
+
113
+ /*
114
+
115
+ while(Game ==true){
116
+
117
+ addKeyListener(this);
118
+
119
+ }
120
+
121
+ */
122
+
123
+ }
124
+
125
+
126
+
127
+ /** 初期処理 */
128
+
129
+ @Override
130
+
131
+ public void init(GLAutoDrawable drawable) {
132
+
133
+ // 画面を初期化する
134
+
135
+ GL2 g = drawable.getGL().getGL2();
136
+
137
+ // black background(黒で初期化)
138
+
139
+ g.glClearColor(0, 0, 0, 0);
140
+
141
+ }
142
+
143
+
144
+
145
+ /**
146
+
147
+ * Draw 2D graphics "H"
148
+
149
+ * 2次元描画で"H”を描く
150
+
151
+ */
152
+
153
+ @Override
154
+
155
+ public void display(GLAutoDrawable drawable) {
156
+
157
+
158
+
159
+ // 表示 start GL(GL2 or GL2)
160
+
161
+ GL2 g = drawable.getGL().getGL2();
162
+
163
+ g.glClear(GL2.GL_COLOR_BUFFER_BIT);
164
+
165
+ // draw in red
166
+
167
+ g.glColor3d(1, 0, 0);
168
+
169
+ // draw "H"
170
+
171
+ g.glBegin(GL2.GL_LINES);
172
+
173
+ // raw line
174
+
175
+ g.glVertex2d(-0.8, 0.8);
176
+
177
+ g.glVertex2d(-0.8, -0.8);
178
+
179
+ g.glVertex2d(-0.8, 0.0);
180
+
181
+ g.glVertex2d(-0.4, 0.0);
182
+
183
+ g.glVertex2d(-0.4, 0.8);
184
+
185
+ g.glVertex2d(-0.4, -0.8);
186
+
187
+
188
+
189
+ // stop draw
190
+
191
+ g.glEnd();
192
+
193
+ }
194
+
195
+
196
+
197
+ @Override
198
+
199
+ public void dispose(GLAutoDrawable arg0) {
200
+
201
+ //method body
202
+
203
+ }
204
+
205
+
206
+
207
+ @Override
208
+
209
+ public void reshape(GLAutoDrawable arg0, int arg1, int arg2, int arg3, int arg4) {
210
+
211
+ // method body
212
+
213
+ }
214
+
215
+
216
+
217
+
218
+
219
+ @Override
220
+
221
+ public void keyTyped(KeyEvent e) {
222
+
223
+ int key = 0;
224
+
225
+ int keycode = e.getKeyCode();
226
+
227
+ if (key == KeyEvent.VK_W){
228
+
229
+ System.out.println("Wキーが押された");
230
+
231
+ }
232
+
233
+ }
234
+
235
+
236
+
237
+ @Override
238
+
239
+ public void keyPressed(KeyEvent e) {
240
+
241
+ throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
242
+
243
+ }
244
+
245
+
246
+
247
+ @Override
248
+
249
+ public void keyReleased(KeyEvent e) {
250
+
251
+ throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
252
+
253
+ }
254
+
255
+ }
256
+
257
+ ```
258
+
259
+
260
+
261
+ ## 開発環境
262
+
263
+ OS:Windows10 OpenGLライブラリ:GL2 (JOGL)