超初心者のプログラム入門(Java)

 

前田稔(Maeda Minoru)の超初心者のプログラム入門(Java)のページへようこそ。
this webpage is written about Java Programing tutorial.

このページは 全くプログラム経験が無い方でも学んでいただけるように構成しています。
Java のバージョンにより動かないことがあるので注意して下さい。
バージョン情報は Java を動かす を参照して下さい。

前田稔(Maeda Minoru)の超初心者のプログラム入門

Java Homepage index

Console Mode Program AWT GUI Swing GUI Java Program Note Game Program

Java 3D 入門

Programming Guide

Console Mode Program

    Java を動かす

  1. Java を動かす
    ただでソフトを手に入れてテストプログラムを動かします。
  2. Jcpad の設定
    Jcpad を使用すると「プログラムの作成から実行まで」簡単に操作できます。
  3. Java で良く使う変数
    Java で良く使用する変数とその使い方です。

    変数と代入

  4. 変数の印字
    変数の値を印字(画面に表示)します。
  5. 代入の基礎
    変数と代入の基礎です。
  6. 比較の基礎
    比較(if 命令)の基礎です。
  7. 一番大きい値
    三個の中から一番大きい値を見つけます。
  8. 中間値を見つける
    三個の中から中間の値を見つけて印字します。
  9. 複合条件
    複合条件の使い方を説明します。
  10. 一番小さい値
    4個の中から一番小さい値を見つけます。
  11. 小さい順に印字
    小さい順に並べて印字します。
  12. 乱数の説明
    乱数を発生させて印字します。

    int と double

  13. 小数点以下の計算する(2003/08/18)
    肥満度(BMI Body Mass Index)を計算して印字します。
  14. 三角形の面積を計算する(2003/08/19)
    ヘロンの公式で三角形の三辺の長さから面積を計算します。
  15. cast 演算を使う(2003/08/20)
    平均点の計算に cast を使います。

    ループの基礎

  16. 10回ループする
    0〜9まで10回ループしながら、制御変数の値を表示します。
  17. 50以下の素数を求めて表示する
    50以下の素数を求めて表示するループの例題です。
  18. 正多角形で円周率を求める(2003/01/01)
    正多角形の外周から円周率の近似値を求めて表示します。

    配列の基礎

  19. 配列を使う
    配列に「1,2,3,4,5」を格納します。
  20. 配列を割り当てる
    10個の要素を持つ配列を割り当てます。
  21. 配列の最小値
    配列の中から最小値を探し出して印字します。
  22. ソートの基本
    ソートの基礎です。
  23. エラトステネスのふるいで素数を求める(2002/12/28)
    配列を定義してエラトステネスのふるいで素数を求めます。
  24. 偶数の魔方陣を作成する(2003/01/03)
    魔方陣とは1〜Nまでの数字を「縦、横、斜めの合計がいずれも等しくなる」ように並べた行列です。
    4,8,16, ...などの偶数の魔方陣を作成します。
  25. 奇数の魔方陣を作成する(2003/01/02)
    魔方陣とは1〜Nまでの数字を「縦、横、斜めの合計がいずれも等しくなる」ように並べた行列です。
    3,5,7, ...などの奇数の魔方陣を作成します。
  26. コマンドラインの引数
    コマンドラインから渡されたパラメータを取得します。
  27. 文字列の分割
    String を分割して String[] の配列に格納します。
  28. カンマで区切った数字を配列に格納
    String で定義したカンマで区切った数字を int 型配列に格納します。
    ※また StringTokenizer の使い方も説明します。
  29. 配列のコピー
    配列のコピーに付いて検証してみました。

    ArrayList の基礎

  30. ArrayList で String を使う
    ArrayList(List) で String を使います。
  31. ArrayList で int を使う
    ArrayList(List) で int を使います。
  32. 2倍すると最後尾の数字が先頭に
    ある長い数列があり、2倍すると最後尾の数字(8)が先頭に移動します。
  33. ArrayList に型をミックスして登録
    ArrayList に String, int, double, char など型をミックスして登録します。
  34. List の一部を切り出す
    ArrayList 及び、配列の一部を切り出します。
  35. List に Point を登録
    ArrayList に Point を登録します。
    また ArrayList を配列に変換します。
  36. ArrayList に登録した値を変更する
    ArrayList に登録した Point の値を変更します。
  37. List のマージとソート
    ArrayList をマージしてソートします。
    また ArrayList を Integerr 型の配列に変換します。

    メソッドの基礎

  38. 1000 までの完全数を求める(2003/08/24)
    完全数の判定を例にして、基本的な Method の使い方を説明します。
  39. Method で素数を求める(2003/01/13)
    素数か合成数かを判定してくれる Method を作成します。
  40. 平方根を求める(2003/01/12)
    ニュートン・ラプソン法で平方根を求めます。
  41. メソッドのオーバーロード
    同じ名前で引数の異なるメソッドを定義(オーバーロード)します。
  42. 階乗を求める再起関数
    再起関数(再起メソッド)を使って階乗を計算して印字します。

    コンソール入力

  43. コンソールから数値を入力する(2002/12/29)
    コンソールから2個の数値を入力して最大公約数と最小公倍数を計算します。
    ※文字列⇔数値の変換も説明します。
  44. 素因数に分解して表示する(2003/01/03)
    整数をコンソールから入力して素因数に分解して表示します。
  45. 標準偏差を計算する(2003/01/02)
    コンソールからデータを入力して分散と標準偏差を計算します。

    ファイル入出力

  46. 標準入力→コンソール出力(文字単位)
    System.in.read() で標準入力(キーボード)から文字を入力します。
  47. 標準入力→標準出力(行単位)
    標準入力から1行単位で読み込み,標準出力に書き出します。
    ※try, catch の使い方も説明します。
  48. 入力ファイル→コンソール出力(文字単位)
    TEXT FILE から1文字ずつ入力して、コンソール(DOS 画面)に表示します。
  49. 入力ファイル→コンソール出力(行単位)
    BufferedReader を使って TEXT FILE から行単位で入力します。
  50. 入力ファイル→出力ファイル(文字単位)
    入力ファイルから1文字ずつ入力して、出力ファイルに書き出します。
  51. 入力ファイル→出力ファイル(行単位)
    入力ファイルから1行単位で入力して、出力ファイルに書き出します。
  52. 入力ファイル→出力ファイル(Binary)
    Binary ファイルの入力/出力を行います。
  53. throws のサンプルプログラム
    throws を使ったサンプルプログラムです。
  54. Text File を二次元配列(int)に格納
    Text File にタイプされたデータを二次元配列(int)に格納します。
    ※StringTokenizer を使います。

    Class の基礎

  55. Class の基礎です(2003/08/23)
    2個の領域に値を設定して、和を求めて印字します。
  56. GCM Class で最大公約数を印字(2003/08/23)
    GCM Class を定義して最大公約数を求めて印字します。
  57. LCM Class で最小公倍数を印字(2003/08/24)
    GCM Class を継承(extends)をした LCM Class を作成して最小公倍数を印字します。
  58. メソッドのオーバーライド
    継承した Class のメソッドを override(オーバーライド)します。
  59. 共有領域を使う
    メインメソッドと内部クラスでデータ領域を共有します。
  60. ファイルを分けて作成する
    GcmLcmClass.java と MainClass.java を別ファイルにします。
  61. 構造体(Class) の使い方
    構造体(Rectangle Class)の Sample Program です。
  62. 構造体(Class) を定義する
    構造体(Class)を定義する Sample Program です。
    ※構造体の配列を使うとき、実体は new で確保しなければなりません。
  63. List(連鎖)の基礎
    構造体(Class)を使った List 連鎖の基礎です。
  64. static メソッドを使う
    static で宣言されたメソッドは new で生成する必要はありません。
  65. abstract(extends)の基礎
    最大公約数と最小公倍数の計算を例にして abstract(extends)の基礎を説明します。
  66. interface(implements)の基礎
    最大公約数と最小公倍数の計算を例にして interface(implements)の基礎を説明します。

    Package でフォルダーを分ける

    急ぐ方は AWT GUI に進んで下さい。

  67. package を使う
    package を使ってソースプログラムをフォルダーにまとめます。
  68. package でファイルを分けて作成する
    package を使ってファイルを分けて作成します。

    Java Beans の基礎

  69. Beans の基礎
    Beans で作成した Calendar(日付/時刻)の Object です。
  70. set Method & get Method
    Beans で setメソッドと getメソッドを定義します。
  71. GCM/LCM の Beans
    Beans で作成した GCM/LCM の Object です。
  72. ArrayList の Beans
    Beans で作成した ArrayList の Object Class です。
    Beans に package を使います。
  73. Serializable
    Serializable で Object をセーブ/ロードします。
  74. Beans でデータを共有
    Beans を使って、複数のプログラム間でデータを共有します。

AWT GUI

    Window(Frame) を表示

  1. Frame を継承して Window を表示
    Frame を継承して Window を表示します。
  2. Frame を継承して背景色を設定する
    Frame を継承して背景が白と赤の Window を同時に表示します。
  3. Listener を使ってプログラムを終了する(2003/03/03)
    Listener を使って Window を閉じるとプログラムを終了します。

    AWT で図形を描画

  4. 色を設定して線を描く
    AWT を使って、色を設定して drawLine で線を描きます。
  5. 赤色で矩形を描く(2003/03/05)
    Windows の画面に赤色で矩形を描きます。
  6. 座標の回転で星を描く(2003/03/06)
    座標を回転する Class を定義して、5本の線で星を描きます。
    ※基本的な Object Class の作成方法を説明しています。
  7. Rotation Object Class で図形を描く(2003/03/07)
    二次元座標を回転する Rotation Object Class を使って図形を描きます。
    ※独立した Object Class の作成と Main() に組み込む方法を説明します。
  8. Rotation Class に Point を使う
    二次元座標を回転する Rotation Object Class に Point を使います。

    AWT でツールを使う

  9. ラベルを使う
    AWT で Window に Label を貼り付けます。
  10. TextField を使う
    AWT で Window に TextField を貼り付けます。
  11. Button を使う
    AWT で Window に Button を三個貼り付けて、押し下げを検出します。

    AWT で Image の描画

  12. JPEG ファイルを表示する
    AWT で JPEG ファイルを入力して Window に貼り付けます。
  13. 犬が歩くアニメーションを描画する
    AWT で犬が歩くアニメーションを描画します。
    ※Listener を使ってフレームを閉じるとプログラムを自動的に終了させます。
  14. AWT Sprite Class でアニメーション
    AWT Sprite Class を使って画像を切り分けてアニメーションします。

    AWT の Key & Mouse

  15. AWT でキーを検出する
    AWT でキーを検出して、タイプされたキーコードを印字します。
  16. マウスクリックの座標を表示する
    MouseListener を implements して、クリックされた座標を表示します。
    ※Listener の一覧を掲載します。
  17. マウスの座標を表示する
    MouseMotionListener を implements して、マウスの座標を表示します。

    AWT その他

    AWT と Swing の違いがわかれば、あとは Swing のページを参照して下さい。
    ここでは Swing とは方法が異なる AWT のプログラムに付いて説明します。

  18. Double Buffer を使う
    画面の「チラツキ」を抑えるために Double Buffer を使って描画します。
  19. 画像の回転で Double Buffer を使う
    画像の回転で Double Buffer を使って、その効果を確認します。

Swing GUI

    Window(Frame) を表示

  1. JFrame を継承して Window を表示(2003/03/02)
    JFrame を継承して Window を表示します。
  2. JFrame を継承して背景色を設定する(2003/03/02)
    JFrame を継承して背景が白と赤の Window を同時に表示します。
  3. JFrame の終了を設定する(2003/03/03)
    JFrame(Window) を閉じるとプログラムを終了します。

    Swing で図形を描画

  4. 色を設定して線を描く
    Swing を使って、色を設定して drawLine で線を描きます。
  5. 太い線を描く
    Graphics2D で太い線を描きます。
  6. 赤色で矩形を描く
    Swing を使って Windows の画面に赤色で矩形を描きます。
  7. 座標の回転で星を描く
    座標を回転する Class を定義して、5本の線で星を描きます。
    ※基本的な Object Class の作成方法を説明しています。
  8. フランスの国旗を描く(2003/01/19)
    矩形の塗りつぶしでフランスの国旗を描きます。
    ※背景をクリアする現実的な方法です。
  9. 星のマークとフォントの設定(2003/01/21)
    座標を定義して星を描き、明朝体の大きな文字でタイトルを表示します。
  10. Star Class で正多角形と星を描画する(2003/01/21)
    Star Class を使うと正多角形や星を回転して、簡単に描画することができます。
  11. シリアとミクロネシアの国旗を表示する(2003/01/23)
    Star Class を使ってシリアとミクロネシアの国旗を表示します。

    Swing でツールを使う

  12. ラベルを使う(2003/01/14)
    Swing で Windows の画面にラベル(JLabel)を表示します。
  13. ボタンを使う(2003/01/15)
    Swing で Windows の画面にボタン(JButton)を表示します。
  14. ボタンにアイコンを貼り付ける(2003/02/27)
    ボタンにアイコン(GIF画像)を貼り付けます。
  15. ボタンのクリックを検出する
    Swing でボタンのクリックを検出します。
  16. CheckBox を使う
    CheckBox の ON,OFF を System.out.println() で表示します。
  17. ButtonGroup を使う
    ButtonGroup で CheckBox を排他制御します。
  18. ボタンのプッシュでデータを取得
    ボタンをプッシュするとデータフィールドからデータを取得します。
  19. Canvas を使う
    Swing で Windows に Canvas を張り付けて図形を描画します。
  20. DialogBox を表示する
    Swing で DialogBox を表示します。

    Key & Mouse の操作

  21. キーのイベントを検出する
    KeyListener を implements して、キーのイベントを検出します。
  22. キーの Pressed を検出する
    KeyListener をサブクラス化して、キーの Pressed を検出します。
  23. マウスのクリックを検出する
    MouseListener をサブクラス化して、マウスのクリックを検出します。
  24. Mouse の操作で矩形を描画(2003/04/09)
    マウスのリスナーをサブクラス化して、ドラッグで矩形を描画します。

    Image の描画

  25. JPEG ファイルを表示する(2003/03/03)
    JPEG ファイルを入力して Window に貼り付けて表示します。
  26. 犬が歩くアニメーションを描画する(2003/03/08)
    犬が歩くアニメーションを描画します。
  27. HTML タグで画像を取得する
    img タグ(HTML)で画像を取得して描画します。
  28. ImageIO で画像を入力する
    ImageIO(ファイル入力)を使って画像を入力します。
    File f, String fileName, String url をパラメータとする例を掲載しています。
  29. タイマで画像を切り替えてアニメーション(2003/03/18)
    タイマ割り込みで画像を切り替えて犬が歩くアニメーションを描画します。
  30. 美人の顔のアニメーション(2003/03/23)
    8枚の画像を切り分けて、タイマ割り込みで美人の顔のアニメーションを行います。
  31. 画像の回転
    画像(Window)を回転しながら描画します。
  32. 入力の完了を待って描画する
    画像ファイルの入力の完了を待って描画します。
  33. Sprite Class でアニメーション(2003/03/24)
    Sprite Class を使って画像を切り分けてアニメーションします。
  34. 矢印キーでキャラクターを動かす
    画像を背景に矢印キーの操作でキャラクターを動かします。
  35. 指定された色を透明にする
    指定された任意の色を透明して描画します。
  36. 画像をブレンドしながら切り替える
    マウスのクリックで、二枚の画像をブレンドしながら切り替えます
  37. アルファチャネル設定イメージ
    背景画像の上からアルファチャネルを設定した赤色のイメージを描画します。
  38. アルファチャネル画像を作成
    二枚の画像を組み合わせてアルファチャネル付き画像を作成します。
  39. アルファチャネルロード
    アルファチャネル付き BMP 画像をロードするメソッドを作成しました。

    Sound の基礎

  40. MIDI を演奏する
    MIDI ファイルを演奏する簡単なプログラムです。
  41. WAV を鳴らす
    Clip を使って WAV を鳴らす簡単なプログラムです。
  42. ボタンのクリックで WAV を鳴らす
    ボタンをクリックすると WAV が鳴ります。

    Thread で起動

  43. Thread で FPS を制御
    Thread で FPS(frames per second) を制御します。
  44. Runnable で FPS を制御
    Runnable で FPS(frames per second) を制御します。

Java Program Note

    Window(Form) の生成アラカルト
    同じアプリケーションを開発するにも Java では、様々な方法が考えられます。
    プログラムの本質は同じでも、組み方や API が変わると何かと勝手が違います。
    Java のページでは Frame(JFrame)を継承する手法を使っていますが、ここでは他の方法も紹介しましょう。

  1. new Frame で生成する(2003/01/27)
    Constructor で Frame(AWT) を生成します。
  2. new Frame で背景色を設定する(2003/01/27)
    new Frame で背景色が既定の色(白)と赤の、2枚の Window を同時に表示します。
  3. main() で直接 Frame を生成する
    Constructor を使わずに main() で直接 Frame(AWT) を生成します。
  4. new JFrame で生成する
    JFrame(Swing) を生成してウインドウを表示します。
  5. new JDialog で生成する
    JDialog(Swing) で DialogBox を表示します。
  6. new JWindow で生成する
    JWindow(Swing) を生成してウインドウを表示します。
  7. Applet で表示する
    Applet を継承して Window を表示します。
  8. SWT で表示する
    SWT(Standard Widget Toolkit) で Window を表示します。

    矩形の描画アラカルト
    同じアプリケーションを開発するにも Java では様々な方法が考えられます。
    Java のプログラミングで思うことは「節操の無い API」で、「いいかげんにしろ」と思うほど複雑怪奇です。 (^_^;)
    ここでは矩形(ボックス)を描画するプログラムを例にして、多少なりとも整理してみました。 ヽ(^^ )

  9. Frame を継承する
    Frame を継承して矩形を描画します。
  10. Canvas を継承する
    Canvas を継承して矩形を描画します。
  11. JFrame を継承する
    JFrame を継承して矩形を描画します。
  12. JPanel を継承する
    JPanel を継承して矩形を描画します。
  13. JDialog を継承する
    JDialog を継承して Box を描画します。
  14. JWindow を継承する
    JWindow を継承して Box を描画します。
  15. Applet を継承する
    Applet を継承して矩形を描画します。
  16. new で生成する
    new で Frame(JFrame) を生成して矩形を描画します。
  17. サブクラス化する
    JFrame でサブクラス化(MyClass)して矩形を描画します。

    Program Chips

  18. Double Buffer を調べる
    Swing で Single Buffer と Double Buffer を切り替えて効果を調べます。
  19. JAVA の環境変数を設定
    JAVA の環境変数を設定/取得します。
  20. OSの環境変数を取得
    OSに設定されている環境変数を取得して表示します。

Game Program
ゲームプログラムは今まで説明したことの集大成です。
欲張らずに基礎から学んで下さい。

    カードゲームに挑戦

  1. CARD Class で画像を切り分ける
    花札の画像を入力して、切り分けて描画します。
  2. CARD をシャッフルして描画
    CARD Class に Shuffle() メソッドを追加します。
  3. CARD をクリックする
    CARD のクリックで裏返します。
  4. CARD を反転表示する
    CARD を左右(上下)反転して描画します。

    シューティングゲームに挑戦

  5. シューティングゲームガイド
    Java でシューティングゲームを作成する場合のガイドです。
  6. キーでシップを操作
    矢印キーでシップを操作します。
  7. 背景画像のスクロール
    ゲームの背景画像をスクロールします。
  8. 弾丸を発射する
    Space キーで弾丸を発射します。
  9. Array List で連射する
    Space キーを押し続けると Array List で連射します。
  10. MyShip から連射する
    MyShip(自機)を操作しながら Space キーで連射します。
  11. ANIME Class でアニメーション
    爆発のアニメーションや Enemy を描画する ANIME Class を作成します。
  12. ENEMY(敵)が出現
    ENEMY(敵)が姿を変えながら画面上部で動き回ります。
  13. 爆発音と爆発のアニメーション
    SHOT Object Class を作成して、ヒットすると爆発音と爆発アニメーションを描画します。
  14. 敵の攻撃
    攻撃方法を変えながら敵が反撃します。

    RPG ゲームに挑戦

  15. RPGゲームガイド
    Java でRPGゲームを作成する場合のガイドです。
  16. 矢印キーでキャラクタを操作
    背景画像をバックに矢印キーでキャラクタを操作します。
  17. BG に沿ってキャラクタを動かす
    BG(背景画像)に沿ってキャラクタを動かします。
  18. Mapchip を並べて背景画像を表示
    Mapchip の Index 番号を配列で定義して、背景画像を表示します。
  19. 出力ファイルを使う
    MapEdit の出力ファイルで背景を描画します。
  20. BG のスクロール
    BG(Back Ground)Class を作成して、矢印キーでスクロールします。
  21. 宝箱の蓋を開ける
    BG に設定した宝箱を探し出して、宝物を取り出します。
  22. ダンジョンに切り替える
    秘密の通路を通ると、ダンジョンの GB に切り替わります。
  23. 二個のウインドウからキャラクタを操作
    二個のウインドウで、情報を共有してキャラクタを動かします。

Java 3D Program

3Dプログラムは、ある程度の基礎が必要で「超初心者のプログラム入門」とは言えないかも知れません。

    Java3D の設定

  1. Java 3D のセットアップ
    Java 3D をセットアップして、サンプルプログラムを実行します。
  2. Java3D のプログラムを動かす
    Ant を使って提供された多くの3Dプログラムを動かします。

    基本図形

  3. Java 3D で点を描画
    Java 3D で Point(点)を描画します。
  4. Java 3D で線を描画
    Java 3D で Line(線)を描画します。
  5. Java 3D でポリゴンを描画
    Java 3D で Polygon(多角形)を描画します。

    3D図形

    基本的なモデルはプリミティブとして用意されているので、3D図形の作成に興味が無い方はパスして下さい。
  6. 立方体を描画
    三次元の頂点座標を定義して立方体を描画します。
    三角形ポリゴンを組み合わせた立方体の面に色を設定します。
  7. 四面体を描画
    三角形ポリゴンを組み合わせて四面体を描画します。
    四面体の面に色を設定します。
    四面体に法線ベクトルを設定します。
    法線ベクトルを計算するメソッドを使います。
  8. チューブを生成して描画
    プログラムでチューブ(円筒)の座標を計算します。
    NormalGenerator で法線ベクトルを設定します。

    プリミティブを描画

  9. プリミティブを描画
    Java 3D でプリミティブ(基本3Dモデル)を描画します。
  10. マテリアルの設定
    Sphere(球)で Material(マテリアル)の効果を確認します。
    平行光源, 点光源, スポットライト, 環境光や半透明も説明します。
  11. 背景色の設定
    背景の色を設定します。また背景に画像を表示します。

    テクスチャ

  12. 矩形にテクスチャを貼付る
    四角形ポリゴンにテクスチャを貼り付けて描画します。
  13. チューブにテクスチャを貼付る
    プログラムで作成したチューブにテクスチャを貼り付けて描画します。
  14. 地球がまわる
    Sphere に地球のテクスチャを張り付けて回転します。
  15. アルファチャネルテクスチャ
    4角形ポリゴンにアルファチャネル付き画像を貼り付けます。

    GeometryInfo で図形を生成

  16. 矩形にテクスチャを貼付る
    GeometryInfo の QUAD_ARRAY を使って、矩形にテクスチャを貼り付けます。
    POLYGON_ARRAY で立方体も作成します。
  17. 色の透明度を設定
    GeometryInfo を使って、三角形ポリゴンを組み合わせて四面体を描画します。
    アルファチャネル(透明度)を設定した色を使います。
  18. アルファチャネルテクスチャ
    立方体の各面に色を設定して、3面にアルファチャネルテクスチャを貼り付けます。

    Transform

  19. キーで操作する
    ColorCube をキーで操作します。
  20. マウスで操作する
    ColorCube をマウスで操作します。
  21. ピッキングする
    Box, Cylinder, Cone, Sphere を並べてピッキングします。
  22. モデルの位置を設定
    モデルの位置を画面中央からずらして描画します。
    また、ColorCube のX,Y,Zのスケールを伸縮して描画します。
  23. 複数のモデルを描画する
    ColorCube と Sphere と Box を並べて描画します。

    Event

  24. クリック座標で色を設定
    クリックしたマウスの座標でモデルの色を設定します。
  25. モデルを Switch で ON, OFF
    並べたモデルを Switch で ON, OFF します。
  26. 3種類のモデルを切り替える
    Switch を使ってマウスのクリックで3種類のモデルを切り替えます。

    モデルファイル

  27. OBJ モデルを描画
    Wavefront で作成した OBJ ファイルを入力して3Dモデルを描画します。
  28. LWS でシーンを再生
    Lightwave で 作成した LWS ファイルでシーンを再生します。
  29. 自作の OBJ Loader を使う
    自作の OBJ Loader を使って3Dモデルを自動的に回転しながら描画します。
  30. XFILE(DirectX のモデル)を描画
    DirectX で使われている XFILE(3Dモデル)を自動的に回転しながら描画します。
  31. MQO モデルを描画
    Metasequoia で作成した MQO ファイルを入力して3Dモデルを描画します。

    3Dアニメーション

  32. ColorCube の自動回転
    ColorCube を自動的に回転しながら描画します。
  33. ColorCube の往復運動
    ColorCube がウインドウの左端⇔右端で往復運動をします。
  34. Interpolator のアニメーション
    「大きさ・色・Switch・透明度」などのアニメーションです。
  35. PositionPath のアニメーション
    PositionPath(変化点)を設定して、モデルを移動します。
  36. PositionPath&RotationPath&ScalePath
    PositionPath&RotationPath&ScalePath を設定してアニメーションします。
  37. KBRotPosScaleSplinePathInterpolator
    KBRotPosScaleSplinePathInterpolator のアニメーションです。
  38. 親子孫関係で回転する
    3個の ColorCube を親子孫の関係で回転しながら描画します。
  39. モデルのモーフィング
    3種類のモデルをブレンドしながらモーフィングします。
  40. モデルの変形
    ColorCube の頂点座標を操作して、変形しながら描画します。
  41. 回転情報の変換
    Matrix, Quaternion, Euler などの回転情報の変換プログラムです。

    Loader の作成

  42. Scene を生成する
    モデルが格納された Scene を生成する Loader の基礎です。
  43. アルファチャネルテクスチャを張り付ける
    二枚の画像を組み合わせてアルファチャネル付きのテクスチャを張り付けます。
  44. OBJ Loader の基礎
    Wavefront のモデルファイル(*.OBJ)を入力します。
  45. OBJ モデルにマテリアルを設定
    OBJ モデルにマテリアル(色やテクスチャなど)を設定して描画します。
  46. OBJ Loader α版
    Wavefront で作成した OBJ Loader のα版です。
  47. Scene XTest
    DirectX のモデルを生成する Loader の基礎です。
  48. XFILE Loader の基礎
    DirectX のモデルファイル(XFILE) を入力します。
  49. Xモデルを描画(テクスチャ)
    テクスチャを張り付けたXモデル(XFILE)を描画します。
  50. X_Loader α版
    DirectX で使われている XFILE Loader のα版です。
  51. Frame Animation Model
    Frame Animation をテストするための XFILE を作成します。
  52. XFILE Frame Animation
    XFILE Frame Animation のプログラムです。
  53. XFILE Animation Model
    XFILE の Animation Model を作成します。
  54. X_Loader β版
    DirectX で使われている XFILE Loader のβ版です。

超初心者のプログラム入門(Java2)
前田稔(Maeda Minoru)の超初心者のプログラム入門