2023プログラミング:Unityのプログラミング2

ゲームステージの拡張
ゲームのステージに動くオブジェクトを追加して拡張していきます。

動く道
動く道を追加します。ヒエラルキーウィンドウのRoadを複製し、インスペクターウィンドウでMoveRoadという名称に変更します。
MoveRoadにRigidbodyコンポーネントをアタッチします。RigidbodyのUse Gravityのチェックマークを外し、Is Kinematicにチェックマークをつけます。
ConstraintsのFreeze RotationのX,Y,Zにチェックマークを付けます。

ScriptsフォルダにMoveRoadという名前のスクリプトを作成します。MoveRoadスクリプトをゲームオブジェクトMoveRoadにドラッグ・アンド・ドロップします。MoveRoadスクリプトがゲームオブジェクトMoveRoadにアタッチできているかをインスペクターウィンドウで確認します。

MoveRoadスクリプトに以下のコードを記述します。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class MoveRoad : MonoBehaviour
{
    private Rigidbody roadRigid;
    private Vector3 defPos;

    void Start()
    {
        roadRigid = GetComponent<Rigidbody>();
        defPos = transform.position;
    }

    void Update()
    {
        
    }

    void FixedUpdate()
    {
        roadRigid.MovePosition(
            new Vector3(defPos.x , defPos.y, defPos.z + Mathf.PingPong(Time.time, 4)));
    }
}

スクリプトの動作確認をします。

MovePositionメソッドを使用して、ゲームオブジェクトの座標を移動させています。

Rigidbody型の変数.MovePosition(移動先の座標)

Mathf.PingPomgメソッドを使用して往復する動きを作ります。

Mathf.PingPong(時間,数値)

Mathf.PingPong(Time.time, 4)の記述を、それぞれ別の座標に足すことで、移動方向を変更できます。
また数値を変更することで、移動距離を変更できます。

例)上下方向に倍の距離を移動する道を作成する。

roadRigid.MovePosition(
            new Vector3(defPos.x , defPos.y + Mathf.PingPong(Time.time, 8), defPos.z ));

 

障害物の作成
キャラクターを突き落とす障害物を作成します。ヒエラルキーウィンドウに新たなキューブ(立方体)を追加し、インスペクターウィンドウで、Obstacleと名前を付けます。マテリアルを作成してアタッチしておきます。Rigidbodyコンポーネントをアタッチし、Massの値を10000にし、Use Gravityのチェックマークを外し、ConstraintsのFreeze RotationのX,Y,Zにチェックマークを付けます。

ScriptsフォルダにObstacleという名前のスクリプトを作成します。ObstacleスクリプトをゲームオブジェクトObstacleにドラッグ・アンド・ドロップします。ObstacleスクリプトがゲームオブジェクトObstacleにアタッチできているかをインスペクターウィンドウで確認します。
Obstacleスクリプトに以下のコードを記述します。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Obstacle : MonoBehaviour
{
    private Rigidbody obstacleRigid;
    private float lastTime = 0.0f;
    private float timeInterval = 4.0f;
    private float speed = 100f;
    private float direction = -1.0f;

    void Start()
    {
        obstacleRigid = GetComponent<Rigidbody>();
        lastTime = Time.time;
        direction = -1.0f;
    }

    void FixedUpdate()
    {
        if (Time.time >= lastTime + timeInterval)
        {
            lastTime = Time.time;
            direction *= -1.0f;
            obstacleRigid.velocity = Vector3.zero;
        }

        Vector3 bearForward = obstacleRigid.transform.right;
        Vector3 moveVector = speed * (bearForward * direction);
        moveVector.y = 0;
        moveVector.z = 0;
        obstacleRigid.AddForce(moveVector, ForceMode.Impulse);
    }
}

スクリプトの動作確認をします。

transformメソッドは、transform.rightで水平方向、transform.forwardで奥行き方向、transform.upで上下方向に座標を移動させることができます。

例)奥行き方向の移動

Vector3 bearForward = obstacleRigid.transform.forward;
        Vector3 moveVector = speed * (bearForward * direction);
        moveVector.x = 0;
        moveVector.y = 0;
        obstacleRigid.AddForce(moveVector, ForceMode.Impulse);

例)上下方向の移動

Vector3 bearForward = obstacleRigid.transform.up;
        Vector3 moveVector = speed * (bearForward * direction);
        moveVector.x = 0;
        moveVector.z = 0;
        obstacleRigid.AddForce(moveVector, ForceMode.Impulse);

2023ウェブデザイン第6回

企画書制作の準備
ウェブデザインを進めていくための企画書を制作していきます。ワークシートに沿って、企画書を制作していきましょう。
以下にワークシートの制作例を掲載します。

ポイントは、ウェブサイトのテーマにおいて、どのような目的のウェブサイトを構築するのかを明確にしておくことです。
みなさんが扱う、団体・企業・学校・グループ・イベントごとなどのテーマをもとに、どのようなウェブサイトを制作するのか、
制作のテーマを決定しましょう。
また、その際、制作テーマのねらいや、想定する利用者像を明確にしておきましょう。

課題
制作のテーマを1案に絞り込み、ワークシートを参考にウェブサイトの制作テーマに落とし込みましょう。
また、制作テーマのコンセプトと、想定する利用者についてまとめましょう。
まとめ方:
・制作テーマを100字程度でまとめる。
・制作テーマのコンセプトを200字程度でまとめる。
・想定する利用者像を具体的に記述する。(年齢、性別、職業、趣味など)
課題提出方法 
CSのレポート掲示板 ウェブデザインI 企画書提出スレッドにPDF形式の文書を提出してください。 
A4サイズ 縦位置・横書き 
提出締切 
5月29日(月)まで

2023プログラミング:Unityのプログラミング1

いよいよ、Unityのプログラミングを進めていきます。

ゲームオブジェクトの配置
Sceneビューに以下のゲームオブジェクトを配置してください。

Plane: ゲームのベースになります。Inspectorで名称をFloorとし、PositionをX:0,Y:0,Z:0、RotationをX:0,Y:0,Z:0、ScaleをX:10,Y:10,Z:10とします。

Cube: ゲームのステージになります。Inspectorで名称をRoadとし、PositionをX:2,Y:0,Z:6、RotationをX:0,Y:90,Z:0、ScaleをX:15,Y:1,Z:3とします。

Cube: ゲームのキャラクターになります。Inspectorで名称をCharacterとし、PositionをX:2,Y:1,Z:0、RotationをX:0,Y:0,Z:0、ScaleをX:1,Y:1,Z:1とします。

それぞれに、異なるMaterial(色)を設定しておきます。

ゲームオブジェクトにコンポーネントをアタッチする
UnityのSceneビューに配置されているものは、全てゲームオブジェクトと呼びます。
ゲームオブジェクトにコンポーネントと呼ぶ部品を接続することで色々な機能が使えるようになります。
ゲームオブジェクトにコンポーネントやマテリアル、スクリプトを接続することをアタッチと呼びます。

Character ゲームオブジェクトにコンポーネントを追加します。
Character のInspectorで Add Componentを選択し、Rigidbodyを選択します。RigidbodyのウィンドウのConstraintsを開き、Freeze RotationのX,Y,Z全ての項目にチェックマークを記載します。この設定によりゲームオブジェクトは重力などの物理法則に従った動きをするようになります。Freeze Rotationの設定は、物理法則に従う際に回転方向への影響を防ぎ、不自然な動きを抑えるものです。

ゲームオブジェクトとカメラを親子関係にする
HierarchyウィンドウでMain Cameraを選択し、InspectorでPositionをX:0,Y:0,Z:-3、RotationをX:0,Y:0,Z:0、ScaleをX:1,Y:1,Z:1とします。

Main CameraをCharacter ゲームオブジェクトにドラッグアンドドロップします。この操作によって、Main CameraがCharacter ゲームオブジェクトに追随するようになります。

スクリプトの記述
スクリプト(Script)とは、簡易的なプログラミング言語のことです。Unityではゲームオブジェクトにスクリプトをアタッチすることで、様々なふるまいをゲームオブジェクトに実行させることができます。

ProjectウィンドウでFolderを追加し、名称をScriptsとします。Scriptsフォルダーを右クリックし、CreateメニューからC#Scriptを選択します。作成されたC#ScriptファイルにControllerという名称をつけます。

Controllerファイルをダブルクリックして展開すると、Visual Studioというプログラミング用のエディターというソフトウェアが開きます。

最初に開いた状態で、Visual Studioには以下のようにスクリプトが記述されています。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Controller : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {

    }
}

以下の部分は各種機能の使用を宣言する部分です。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

以下の部分はクラスと呼ばれる処理の括りとなります。

public class Controller : MonoBehaviour
{

}

以下の部分は、それぞれメソッドと呼ばれ、スクリプト内での実行のタイミングが決まっています。

Startメソッド:ゲームオブジェクトが出現した時に実行する

void Start()
    {

    }

Updateメソッド:フレームごとに実行する

void Update()
    {

    }

ゲームのプログラミング
エディターに以下の記述を加えていきます。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Controller : MonoBehaviour
{
    private float speed = 3f;
    private float verticalInput = 0f;
    private Rigidbody CharacterRigidbody;

    void Start()
    {
        CharacterRigidbody = GetComponent<Rigidbody>();
    }

    void Update()
    {
        verticalInput = Input.GetAxis("Vertical");

        if (Input.GetKey("right"))
        {
            CharacterRigidbody.transform.Rotate(0, 10, 0);
        }
        else if (Input.GetKey("left"))
        {
            CharacterRigidbody.transform.Rotate(0, -10, 0);
        }
    }

    void FixedUpdate()
    {
         if (CharacterRigidbody.velocity.sqrMagnitude < 5f)
         {
            Vector3 CharacterForward = CharacterRigidbody.transform.forward;
            Vector3 moveVector = speed * (CharacterForward * verticalInput);
            moveVector.y = 0;
            CharacterRigidbody.AddForce(moveVector, ForceMode.Impulse);
         }
    }

}

 

プログラムの解説

変数の宣言
変数の型を決めて、変数名を宣言します。
変数の「値」を設定しておくこともできます。

private float speed = 3f;
private float verticalInput = 0f;
private Rigidbody CharacterRigidbody;

GetComponentメソッド
<>内に取得したいコンポーネント名を記載して使用します。

CharacterRigidbody = GetComponent<取得したいコンポーネント名>();

Updateメソッド
Vertical(上下)、right(右)、left(左)それぞれのキーに対応する動きを設定しています。

Verticalキーの上向きボタンを押下すると0.01fの小さい値が入力され、押下し続けると最大で1.0fの値が入力されます。下向きボタンを押下すると、-0.01fの小さい値が入力され、押下し続けると最小で-1.0fの値が入力されます。押されていない時は0.0fの値が入力されます。

verticalInput = Input.GetAxis("Vertical");

if文(条件分岐)
プログラミングは通常は最初の1行から終わりの1行まで順番に処理されます。しかし、それでは複雑な処理をコンピューターに実行させることができません。複雑な処理をさせるための方法のひとつとして条件分岐という考え方が存在します。

単純な処理:
公園に行く。

複雑な処理:
晴れたら公園に行く。
そうでなければ、家で読書する。

上の例のように、条件によって行動(=処理)が変化する(=分岐する)ことを条件分岐といいます。上の複雑な処理の例は以下のように条件分岐命令の書式で記述することができます。

if( 晴れ ){ 公園に行く; }else{ 家で読書する; }

コードであらわす場合は以下のように記述します。

if( 条件式 ){ 条件式が真の場合に実行する内容; }else{ 条件式が真ではない場合に実行する内容; }

プログラミングでは、真であることをtrueと記述します。また真ではない場合は偽とあらわしfalseと記述します。

if〜else文

if文の条件を満たさなかった場合の処理を明示する場合は、以下のように記述することができます。

if( 条件式 ){ 条件がtrueの場合に実行される内容; }else{ 条件がfalseの場合に実行される内容; }

条件式
真偽を判定するために使用できる条件式を以下に記載します。

< 左辺が右辺より小さい

i<100

> 左辺が右辺より大きい

i>100

<= 左辺が右辺以下

i<=100

>= 左辺が右辺以上

i>=100

>== 左辺が右辺に等しい

i>==100

!= 左辺が右辺に等しくない

i>!=100

&& かつ (「かつ」はandとも表現する)

i>0 && i<100

|| または (「または」はorとも表現する)

i<0 || i>100

Unityのスクリプトでは、右ボタンが押下されたら10度回転、そうでない場合は、-10度回転するようにif文で記述しています。

if (Input.GetKey("right"))
{
    CharacterRigidbody.transform.Rotate(0, 10, 0);
}
else if (Input.GetKey("left"))
{
    CharacterRigidbody.transform.Rotate(0, -10, 0);
}

追加の処理
以下のif文を追加してみましょう。

if (Input.GetKey("a"))
{
    CharacterRigidbody.position += Vector3.up * 0.05f;
}

if (Input.GetKey("b"))
{
    CharacterRigidbody.position += Vector3.forward * 0.5f;
}

FixedUpdateメソッド
キャラクターの移動処理を記述します。

if (CharacterRigidbody.velocity.sqrMagnitude < 5f)
{
   Vector3 CharacterForward = CharacterRigidbody.transform.forward;
   Vector3 moveVector = speed * (CharacterForward * verticalInput);
   moveVector.y = 0;
   CharacterRigidbody.AddForce(moveVector, ForceMode.Impulse);
}

AddForceメソッド
Rigidbodyコンポーネントがアタッチされているゲームオブジェクトに力を加えて動かす。

Rigidbody型の変数.AddForce(力の強さ,力のかけ方)

力のかけ方:
ForceMode.Force 重さあり、継続的に力を加える
ForceMode.Impulse 重さあり、瞬間的に力を加える
ForceMode.Acceleration 重さ無視、加速度を設定
ForceMode.VerocityChange 重さ無視、速度を設定

Visual Studioでスクリプトが記述できたら保存して、Unityの操作画面に戻り、トップバーのゲーム実行ボタンを押して動作確認してみる。

2023ウェブデザイン第5回

準備:ファイル「index.html」、「about.html」、「style.css」をメモ帳で開いておく。
解説を参照してソースコードに記述を加える。

解説:
トップページに写真を配置する

1) 画像(*)を用意して、imagesフォルダに保存しておく。

*配置する画像は,あらかじめPhotoshopなどを使って最適な大きさにリサイズしておきます。
今回は、画像の幅が400pixcelあれば良いので、その大きさにPhotoshop上で画素数を減らしておきます。
(不必要に大きな画素数のまま表示させると、表示に時間がかかったり、サーバの容量を圧迫することになる)

2)「index.html」トップページの本文の手前に、次の一行を追加します。

<p><img src="images/XXXX.jpg" alt="画像の説明文" width="400" height="267" /></p>

src=”images/XXXX.jpg”の箇所のXXXX.jpgは、自分で用意した画像のファイル名に変更しておく。
alt=”画像の説明文”の箇所は、画像が表示されなかった場合に備えて、画像の説明文を記載しておく。
widthとheightで、それぞれ画像の幅と高さを指定することができる。

3)サイトのタイトルを、文字ではなく画像で表示するように変更する。
「index.html」トップページのタイトルのところを、次にように書き換えます。

<img src="images/title.jpg" alt="タイトルの説明文" width="760" height="260">

4)「about.html」の本文中に、写真を配置する。
「about.html」の2箇所に,次の行を追加します。(追加箇所はソースコードを参照すること)

<img src="images/photo01.jpg" alt="画像の説明文" width="250" height="165" class="photo-r" />
<img src="images/photo02.jpg" alt="画像の説明文" width="250" height="165" class="photo-l" />

5)写真が表示される位置を、「style.css」で指定する。
今回は,写真が本文の右側に表示される箇所(photo-r)と、写真が本文の左側に表示される箇所(photo-l)の
2つのスタイルを、「style.css」の中に書き込みます。

右寄せの写真の配置:

img.photo-r {
float: right;
margin-left: 15px;
margin-bottom: 15px;
}

左寄せの写真の配置:

img.photo-l {
float: left;
margin-right: 15px;
margin-bottom: 15px;
}

ソースコード
ファイル名:「index.html」

<!DOCTYPE html>
<html lang="ja">

<head>
<meta charset="UTF-8">

(中略)
<!-- サイトの見出しとその説明 -->
<h1>
<img src="images/title.jpg" alt="タイトルの説明文" width="760" height="260">
</h1>
<p>愛知淑徳大学の魅力を紹介します。</p>

<!-- メニューのリスト -->
<ul>
<li><a href="index.html">トップページ</a></li>
<li><a href="about.html">このページについて</a></li>
<li><a href="campus.html">コンテンツ1</a></li>
<li><a href="class.html">コンテンツ2</a></li>
</ul>

<!-- トップページに写真を配置する -->
<p>
<img src="images/XXXX.jpg" alt="画像の説明文" width="400" height="267" /></p>

<p>本文</p>

<!-- addressには制作者の情報を入れる -->
<address>制作者:自分の名前(愛知淑徳大学創造表現学部)</address>

(後略)

ファイル名:「about.html」

<!DOCTYPE html>
<html lang="ja">

<head>
<meta charset="UTF-8">

(中略)

<h2>中見出し</h2>
<p>本文</p>

<h3>小見出し</h3>
<p><img src="images/photo01.jpg" alt="画像の説明文" width="250" height="165" class="photo-r" />
本文<br/ >
本文</p>

<h3>小見出し</h3>
<p><img src="images/photo02.jpg" alt="画像の説明文" width="250" height="165" class="photo-l" />
本文<br/ >
本文<br/ >
本文</p>

<address>制作者:自分の名前(愛知淑徳大学創造表現学部)</address>

</div>
<!-- div containerここまで -->

</body>
<!-- bodyここまで -->

</html>

ファイル名:「style.css」

@charset "utf-8";

/* ここからスタイルをはじめます */

body {
color: #444444;
background-color: #87cefa;
background-image: url(images/back.png);
}

(中略)

h3 {
font-size: 18px;
font-family: sans-serif;
color: #4169e1;
border-bottom: solid 2px #4169e1;
padding-bottom: 3px;
background-image: url(images/mark.png);
background-repeat: no-repeat;
background-position: 0px 6px;
padding-left: 20px;
}

/* 画像の配置位置を指定する */
/* 右寄せで配置する画像はclass photo-rにする */
img.photo-r {
float: right;
margin-left: 15px;
margin-bottom: 15px;
}

/* 左寄せで配置する画像はclass photo-lにする */
img.photo-l {
float: left;
margin-right: 15px;
margin-bottom: 15px;
}

p {
font-size: 16px;
line-height: 1.8;
font-family: Verdana, Helvetica, sans-serif;
}

(後略)

表の作成

「index.html」をコピーアンドペーストして、「class.html」と名付けて、「index.html」等と
同じフォルダ内(同じディレクトリ)に置く。

「class.html」内に表示する表を制作する。

HTMLでの表の作成の考え方
HTMLでは,<table>というタグを使って表を作成します。表の行を増やす場合には<tr>〜</tr>を使います。
表の列を増やす場合には,見出しの行には<th>〜</th>を,その他の行のには<td>〜</td>を使います。

今回の例では,3行×2列の表を作成します。
まず、<table>〜</table>と書いてから、その中に<tr>〜</tr>(1行目)のタグを書き、
その中にさらに<th>〜</th>(見出しの列)、<td>〜</td>(見出し以外の列)と中身の列を
書き込んでいくとよいでしょう。

「style.css」を使って、表の線の幅や背景色などの見た目の設定をする。
CSSファイル内に,新たにtable{ }(表全体の見た目の設定)と,th{ }(見出しの列の見た目の設定),td{ }(見出し以外の列の見た目の設定)を書いていきます。

table {
font-size: 14px;
margin-bottom: 20px;
margin-left: 20px;
width: 600px;
border: none;

border-collapse: separate;
}
th {
padding: 8px;
width: 150px;
text-align: left;

vertical-align: top;

background-color: #ffefd5;
border: solid 1px #ffcc66;
}
td {
padding:8px;
border: solid 1px #ffcc66;
}

ソースコード
ファイル名:「class.html」

<!DOCTYPE html>
<html lang="ja">

<head>
<meta charset="UTF-8">

(中略)
<h2>中見出し</h2>
<p>本文</p>

<h3>小見出し</h3>

<table summary="表の説明分">
<tr>
<th>表の見出し1</th>
<td>表の本文</td>
</tr>

<tr>
<th>表の見出し2</th>
<td>表の本文</td>
</tr>

<tr>
<th>表の見出し3</th>
<td>表の本文</td>
</tr>
</table>

<p>本文</p>

(後略)

ファイル名:「style.css」

(中略)

h3 {
font-size: 18px;
font-family: sans-serif;
color: #4169e1;
border-bottom: solid 2px #4169e1;
padding-bottom: 3px;
background-image: url(images/mark.png);
background-repeat: no-repeat;
background-position: 0px 6px;
padding-left: 20px;
clear: both;
}

table {
font-size: 14px;
margin-bottom: 20px;
margin-left: 20px;
width: 600px;
border: none;
border-collapse: separate;
}

th {
padding: 8px;
width: 150px;
text-align: left;
vertical-align: top;
background-color: #ffefd5;
border: solid 1px #ffcc66;
}

td {
padding: 8px;
border: solid 1px #ffcc66;
}

/* 画像の配置位置を指定する */
/* 右寄せで配置する画像はclass photo-rにする */

(後略)

 

制作するWebページのテーマを考える

次回の授業以降は、各自が独自のテーマを設定し、そのテーマをもとにWebページのデザインを進めていきます。

特定の団体・企業・学校・グループ・イベントなどのテーマをひとつ決めて,それを紹介するためのウェブサイトを制作する。

●制作のテーマについて
団体・企業・学校・グループ・イベントごとなど,なにかひとつのテーマを決めて,それを紹介するためのウェブサイトを制作する。テーマとする団体等は,実在のものでも架空のものでも,どちらでも構わない。
自分のためではなく,他者が見て興味を持つことができるウェブサイトを制作すること。また,どのような人が見るためのウェブサイトであるか,ターゲットを明確にすること。

まずはじめに、制作のテーマについて考えていきましょう。その際、伝えたいメッセージや、ウェブページ制作の素材となる文書や画像などを豊富に集めることができるテーマを選択するのがポイントになります。

課題
制作のテーマを3案考えて、アイディアをまとめてください。
まとめ方:
・3案それぞれのアイディアに、わかりやすいタイトルをつける。
・アイディアごとに200文字程度の解説をつける。

課題提出方法 
次回、5月23日(火)の授業でテーマ案をもとに企画書を作成していきます。

2023プログラミング:Unityの基礎

Unityの画面レイアウト変更
3DCGゲームが作りやすいようにUnityの画面レイアウトを変更する。Unityの画面右上のLayout(レイアウト)ボタンから、2by3を選択する。

Unityの画面レイアウトについて
Sceneビュー
ゲーム作成用のステージ画面。ゲームオブジェクトを配置してゲームを作成する。
Gameビュー
ゲームを作成し、実行した時の見え方を確認できる。Sceneビューに配置したカメラを調整することで見え方を変更できる。
Hierarchyウィンドウ
Sceneビューに配置したゲームオブジェクトのリストが表示される。
Projectウィンドウ
プロジェクトで使用するアセットを管理する。
Inspectorウィンドウ
選択しているゲームオブジェクトやアセットの詳細情報が表示される。
ツールバー
Sceneビューでの各種操作や、ゲームの実行・停止などのボタンが配置されている。

3Dゲームオブジェクトの作成
Hierarchyウィンドウ上部の+ボタンをクリックし、3D Objectに続けて、配置したい基本形状を選択するとSceneビューに配置される。Sceneビューには座標があり、X軸=横幅、Y軸=奥行き、Z軸=高さの3つの要素で空間が構成されている。
ゲームオブジェクトの移動・回転・拡大縮小
ツールバーのMove、Rotate、Scaleいずれかのボタンを選択すると、ゲームオブジェクトの周囲に操作用の表示があるので、それぞれ操作する。
Transformコンポーネントの操作
InspectorウィンドウのTransformコンポーネントのMove、Rotate、Scaleにそれぞれ数値を入力して操作する。

Sceneビューの視点変更
ズームイン・ズームアウト
マウスの中ボタンをホイールとして使い回転させる。
視点の範囲変更
ツールバーのHand Toolボタンを押してSceneビュー内をドラッグする。
視点の角度変更
Sceneビュー上でAltキーを押し、Hand Toolの表示が目の形のアイコンになったらSceneビュー内をドラッグする。
シーンギズモの操作
Sceneビュー右上に表示されるシーンギズモのXYZの円錐形ボタンをクリックすると、クリックした軸が正面を向く。
Shiftキーを押しながらシーンギズモの中心の立方体をクリックすると2軸と3軸の見え方を交互に切り替えられる。

マテリアルの設定
マテリアル(Material)は色や材質をゲームオブジェクトに設定するためのものである。
ゲームオブジェクトにマテリアルを設定する。
・Projectウィンドウ内にあるAssetsフォルダを右クリックし、Create > Folderをクリックする。
・Projectウィンドウ内のAssetsフォルダ内に新しいフォルダが作成されるので、フォルダ名をMaterialsにする。
・Materialsフォルダを右クリックしCreate > Materialをクリックする。
・新規のマテリアルが作成されるので、任意の名前を付けておく。
・マテリアルを選択した状態で、マテリアルのInspectorウィンドウのAlbedoの横の四角い枠をクリックするとColorウィンドウが開くので色の設定をする。
・その他の項目についても設定しマテリアルを完成させる。
・完成したマテリアルをHierarchyウィンドウのゲームオブジェクトにドラッグ・アンド・ドロップするとゲームオブジェクトにマテリアルを関連づけることができる。

2023ウェブデザイン第4回

準備:ファイル「index.html」、「about.html」、「style.css」をメモ帳で開いておく。
解説を参照してソースコードに記述を加える。

解説:
メニューの設定
スタイルシートに、以下のように記述を加える。
1)リンクの文字に表示される下線を消すために、「text-decoration: none」を指定します。
2)リンクの文字(メニュー)が一行に表示されるように、「display: inline」などを指定します。
3)リンクの文字の色を変えるには、「a(リンクがある文字)」「a:visited(訪れたことがあるリンクの文字)」「a:hover(カーソルが乗っている状態のリンクの文字)」をスタイルシートに記入します。
ここでは、「a(リンクがある文字)」を濃い青(#0000cd)に、「a:visited(訪れたことがあるリンクの文字)」を水色(#6495ed)に指定します。「a:hover(カーソルが乗っている状態のリンクの文字)」は、背景に青い色がつくようにbackground-colorを使って指定します。

a …リンクの文字
a:visited …訪れたことがあるリンクの文字
a:hover …カーソルが乗っている状態のリンクの文字

ページ全体を罫線で囲み背景に色をつける
ページ全体の見え方の指定をするために、指定したい部分に目印をつけます。
ここでは、「index.html」の中に<div>タグを使って<container>というid属性の目印をつけます。その部分の見え方の指定は、「style.css」でおこないます。
背景模様のもとになる画像には、「back.jpg」というファイル名をつけ、「index.html」などと同じディレクトリに「images」というフォルダを作成して、その中に入れておきます。今後使用する画像も、この「images」フォルダに入れていきます。
背景模様になる画像は,繰り返し表示されるので,パターンの一部だけを作成して画像として保存します。

タイトルまわりに色をつける
「about.html」のタイトルまわりを設定するために,<div>タグを使って<header>という名前のid属性を指定します。
id属性が<header>に指定されている箇所の指示を、「style.css」に書き込みます。

見出しに装飾をする
「about.html」の<h2>見出しと<h3>見出しの設定を、それぞれ「style.css」の中に書き込みます。
<h2>見出しには、左端に■が表示されるようにします。■印の表示には、枠線の左側だけを表示するという方法を使います。

【borderで指定できる線の種類】
solid …実線
double …二重線
dashed …破線
dotted …点線

【borderで指定する線の位置】
border …上下左右を囲む
border-top …上に線を表示する
border-right …右に線を表示する
border-bottom …下に線を表示する
border-left …左に線を表示する

<h3>見出しには,左端に画像のマークをつけ,下線を表示するようにします。マークは,「mark.png」というファイル名で,「images」フォルダの中に入れておきます。

 

ソースコード:
「index.html」

<!DOCTYPE html>
<html lang="ja">

<head>
<meta charset="UTF-8">

[中略]

</head>
<!-- headここまで -->

<!-- ここからbody -->
<body>

<!-- ここからdiv container -->
<div id="container">

<!-- サイトの見出しとその説明 -->
<h1>見出し</h1>
<p>本文</p>

[中略]

<!-- addressには制作者の情報を入れる -->
<address>制作者:自分の名前</address>

</div>
<!-- div containerここまで -->

</body>
<!-- bodyここまで -->

</html>

 

「about.html」

<!DOCTYPE html>
<html lang="ja">

<head>
<meta charset="UTF-8">

[中略]

</head>
<!-- headここまで -->

<!-- ここからbody -->
<body>

<!-- ここからdiv container -->
<div id="container">

<!-- ここからdiv header -->
<div id="header">

<!-- サイトの見出しとその説明 -->
<h1>見出し</h1>
<p>本文</p>

</div>
<!-- div headerここまで -->

<!-- メニューのリスト -->
<ul>
<li><a href="index.html">トップページ</a></li>

[中略]

<address>制作者:自分の名前</address>

</div>
<!-- div containerここまで -->

</body>
<!-- bodyここまで -->

</html>

 

「style.css」ソースコード

@charset  "utf-8";

/* ここからスタイルをはじめます */

body  {
  color:  #444444; 
  background-color:  #87cefa; 
  background-image:  url(images/back2.png); 
}

/* コンテンツ全体(id属性=container)の指定 */
div#container  { 
  border:  solid  2px  #6495ed; 
  padding:  20px; 
  background-color:  #ffffff; 
  width:  800px; 
  margin-left:  auto; 
  margin-right:  auto; 
}

/* タイトルまわり(id属性=header)の指定 */
div#header  { 
  background-color:  #87cefa; 
  padding:  5px  20px; 
}

h1  {
  font-size:  36px; 
  font-family:  sans-serif; 
  color:  #191970; 
  font-weight:  normal; 
}

h2  {
  font-size:  22px; 
  font-family:  sans-serif; 
  color:  #191970; 
  font-weight:  normal; 
  border-left:  solid  14px  #87cefa; 
  padding-left:  5px; 
}

h3  {
  font-size:  18px; 
  font-family:  sans-serif; 
  color:  #4169e1; 
  border-bottom:  solid  2px  #4169e1; 
  padding-bottom:  3px; 
  background-image:  url(images/mark.png); 
  background-repeat:  no-repeat; 
  background-position:  0px  6px; 
  padding-left:  20px; 
}

p  { 
  font-size:  16px; 
  line-height:  1.8; 
  font-family:  Verdana,  Helvetica,  sans-serif; 
}

address  { 
  font-size:  14px; 
  font-style:  normal; 
}

/* メニューのリンクの文字色の設定 */
a  {
  color:  #0000cd; 
}

a:visited  {
  color:  #6495ed; 
}

a:hover  {
  color:  #ffffe0; 
  background-color:  #4169e1; 
}

/* リスト(メニュー)関係の設定 */
li  a  { 
  text-decoration:  none; 
} 

li  { 
  display:  inline; 
  padding-right:  10px; 
  font-size:  16px; 
  font-family:  Verdana,  Helvetica,  sans-serif; 
}

ul  { 
  list-style-type:  none; 
  margin-left:  0; 
  padding-left:  0; 
  background-color:  #ffefd5; 
  padding:  3px  20px; 
}

2023ウェブデザイン第3回

文字の表示について

前回までに作成したファイル「index.html」と「style.css」を,メモ帳で開きます。

ソースコード01_01

ファイル名:「index.html」

<!DOCTYPE html>
<html lang="ja">

<!-- ここからhead -->
<head>
<meta charset="UTF-8">

<!-- ページのタイトルをここに入れる -->
<title>タイトルを記述しましょう</title>

<!-- スタイルシートの場所を指定している -->
<link rel="stylesheet" href="style.css" type="text/css">

</head>
<!-- headここまで -->

<!-- ここからbody -->
<body>
<!-- サイトの見出しとその説明 -->
<h1>サイトの見出し</h1>
<p>本文を記述します。</p>
<!-- addressには制作者の情報を入れる -->
<address>制作者:自分の名前(愛知淑徳大学創造表現学部メディアプロデュース専攻)</address>

</body>
<!-- bodyここまで -->
</html>

ソースコード01_02

ファイル名:「style.css」

@charset "utf-8";

/* ここからスタイルをはじめます */

body {
color: #444444;
}

h1 {
font-size: 36px;
font-family: Verdana, Helvetica, sans-serif;
color: #191970;
font-weight: normal;
}

p {
font-size: 16px;
line-height: 1.8;
font-family: Verdana, Helvetica, sans-serif;
}

address {
font-size: 14px;
font-style: normal;
}

文字の表示変更
スタイルシート内の、文字の表示に関わる以下の設定を変更して文字の表示を変更してみましょう。

①文字のサイズ
font-size: 数値px;
サイズの値はピクセルです。数値を変えてサイズを変更してみましょう。

②文字の書体
font-family: font-familyの種類;
文字の書体を他の種類に変更してみましょう。
【font-familyの種類】
sans-serif…ゴシック系のフォント
serif…明朝系のフォント
cursive…筆記体・草書体のフォント
fantasy…装飾的なフォント
monospace…等幅フォント

③文字の太さ
font-weight: font-weightの種類;
文字の太さを他の種類に変更してみましょう。
【font-weightの種類】※コンピュータ環境によって反映されない場合があります。
normal…標準の太さ
bold…一般的な太字
lighter…相対的に一段階細く
bolder…相対的に一段階太く

④文字のスタイル
font-style: font-styleの種類;
【font-styleの種類】
normal…標準フォントで表示
italic…イタリック体フォントで表示
oblique…斜体フォントで表示

⑤文字の行間隔
line-height: 数値;
文字の行間隔を、数値を変えて変更してみましょう。

リンクの設定
リンク(クリックすると他のページに移動する)を作成します。

<a href="リンク先のページ.html">リンクを設定したい文字列</a>

上のように記述することで,そのリンクをクリックしたときにどのウェブページを表示するのかを指定します。

記載例)

<a href="about.html">このサイトについて</a>

リストの設定
今回のウェブサイトでは,リンクをリスト形式で記述し、リンクを4つ用意することにします。
リスト形式にしたい部分は以下のタグで囲みます。

<ul>〜</ul>

リストのひとつひとつの要素は以下のタグで囲みます。

<li>〜</li>

リスト形式の記述例は以下のようになります。

<ul>
<li>〜</li>
<li>〜</li>
<li>〜</li>
</ul>

リンク先のウェブページを作成する
「index.html」をフォルダ内で複製します。複製して増やした方のファイルを,「about.html」というファイル名に変更します。
※名前を付けて保存しなおす場合は,文字コードの指定(「UTF-8」)を忘れないようにしましょう。

リンクの記述
以下のようにソースコード内にメニュー(リンク)のリストを挿入しましょう。

ソースコード02_01

ファイル名:「index.html」

<!DOCTYPE html>
<html lang="ja">

<head>
<meta charset="UTF-8">

<!-- ページのタイトルをここに入れる -->
<title>タイトル</title>

<!-- スタイルシートの場所を指定している -->
<link rel="stylesheet" href="style.css" type="text/css">

</head>
<!-- headここまで -->

<!-- ここからbody -->
<body>

<!-- サイトの見出しとその説明 -->
<h1>見出し</h1>
<p>説明文</p>

<!-- メニューのリスト -->
<ul>
<li><a href="index.html">トップページ</a></li>
<li><a href="about.html">このページについて</a></li>
<li><a href="campus.html">コンテンツ1</a></li>
<li><a href="class.html">コンテンツ2</a></li>
</ul>

<p>本文</p>

<!-- addressには制作者の情報を入れる -->
<address>制作者:自分の名前(愛知淑徳大学創造表現学部)</address>

</body>
<!-- bodyここまで -->

</html>

ソースコード02_02

ファイル名:「about.html」 ※「index.html」を複製し,必要な部分だけ書き換えます。

<!DOCTYPE html>
<html lang="ja">

<head>
<meta charset="UTF-8">

<!-- ページのタイトルをここに入れる -->
<title>タイトル</title>

<!-- スタイルシートの場所を指定している -->
<link rel="stylesheet" href="style.css" type="text/css">

</head>
<!-- headここまで -->

<!-- ここからbody -->
<body>

<!-- サイトの見出しとその説明 -->
<h1>見出し</h1>
<p>解説</p>

<!-- メニューのリスト -->
<ul>
<li><a href="index.html">トップページ</a></li>
<li><a href="about.html">このページについて</a></li>
<li><a href="campus.html">コンテンツ1</a></li>
<li><a href="class.html">コンテンツ2</a></li>
</ul>

<h2>中見出し</h2>
<p>説明</p>

<h3>小見出し</h3>
<p>説明<br>
説明</p>

<h3>小見出し</h3>
<p>説明<br>
説明</p>

<!-- addressには制作者の情報を入れる -->
<address>制作者:自分の名前(愛知淑徳大学創造表現学部)</address>
</body>
<!-- bodyここまで -->

</html>

完成したら、リンクを設定した文字列をクリックして動作を確認してみましょう。

2023プログラミング準備編2:マテリアル設定とレンダリング

マテリアルの設定

3CCGで制作するオブジェクトの表面にマテリアルの設定を施すことで、よりリアルな表現が可能になります。

Blenderでは、以下の手順でオブジェクトにマテリアルを設定します。

1. シェーディングのモードを切り替える

3Dビューの右上にある、シェーディングモードの選択ボタンから、マテリアルプレビューモードのボタンをクリックしてシェーディングモードを切り替えます。

2. マテリアルプロパティの設定

プロパティからマテリアルプロパティを選択し、「新規」ボタンをクリックする。新しく作成された「マテリアル」の名称を変更する。(マテリアルと表記された箇所をダブルクリックする。)
マテリアルに各種設定を施す。

・ベースカラー
基本となる色のこと。
・メタリック
金属の性質を示す数値です。値が1に近いほど金属質になり、0に近いほど非金属質となります。
・スペキュラー
鏡面反射の度合いを示す数値です。値が1に近いほどハイライトが強くなり、0に近いほどハイライトが弱くなります。
・粗さ
表面の荒さを示す数値です。1に近いほど粗く、0だと平滑となり周囲の景色が強く映り込みます。
・伝播
透明度を示す数値です。1に近いほど透明度が高く、0は不透明となります。
・IOR
光の屈折率を示す数値です。伝播が0で不透明なオブジェクトには効果が表れません。

反射などのマテリアル属性を確認するには、レンダープロパティを選択し、スクリーンスペース反射にチェックを入れます。

作成したマテリアルを複数のオブジェクトに適用するには、アウトライナーから、対象とするマテリアルを選んで、3Dビューワー上のオブジェクトにドラッグ・アンド・ドロップして設定する。

カメラとライトの設定

1. 3Dビューの右上にある、シェーディングモードの選択ボタンから、レンダープレビューモードのボタンをクリックしてシェーディングモードを切り替えます。

2. アウトライナーからライト(Light)を選択し、適切な位置に配置します。

3. ナビゲートメニューからカメラをクリックしてカメラビューに切り替えます。

3Dビューの右端の三角ボタンをクリックするか、キーボードのNボタンを押してサイドメニューを呼び出し、ビューを選択しビューのロックから、カメラをビューにロックする項目にチェックを入れておきます。

カメラに対象のオブジェクトが適切に配置されるようにレイアウトします。

レンダリング

レンダリング(Rendering)とは、各種設定によって完成した3次元立体空間の画像または映像を出力することです。コンピューターの処理能力にもよりますが、レンダリングには非常に多くの処理時間が必要です。

トップバーのレンダーメニューから画像をレンダリングを選択すると、レンダリングが開始されます。

レンダリングが完成するとビューワーが開き、レンダリング後の画像が表示されます。ビューワーの画像メニューから、名前を付けて保存を選択すると、保存の設定画面が開きます。ファイルフォーマットから適切な画像データ形式を選択し、ファイル名を付けて保存先を指定して保存します。

データのエクスポート

Blenderで作成した3DCGモデルをUnityで使用できるように書き出してみましょう。トップバーのメニューから、ファイル>エクスポート>FBXを選択します。(FBXはファイル形式の名称です。)
ファイルビューウィンドウが開くので、保存場所を指定し、ファイル名を指定し(XXX.fbxのXXXの部分を任意の名称にする)、オブジェクトタイプから、カメラとランプ以外の項目を選択して、エクスポートボタンをクリックします。

保存されたFBX形式のデータ(XXX.fbx)を、UnityのProjectウィンドウにドラッグ&ドロップすることで、Unityで使用できるようになります。

練習課題

Blenderで作成した動物モデルをレンダリングし、画像として出力して
提出してください。
・PNGデータで提出すること。
・提出場所:CS レポート掲示板 
  プログラミングI「動物モデルのレンダリング画像提出」スレッド
・締切:5月15日(月)まで

2023ウェブデザイン第2回

おさらい
前回の授業では、かんたんなソースコードを自分で書いてコンピュータ上に保存し,それをWebブラウザで開いて,Webページとして表示しました。ここまでの作業手順をもう一度、確認しておきましょう。

作業手順
① PCを起動し,デスクトップに新しいフォルダをひとつ作成する。
② 作成したフォルダの名前を,自分の学籍番号にする。
③ 「スタートメニュー」>「すべてのプログラム」>「アクセサリ」>「メモ帳」を起動する。
④ 下記のソースコード01を見ながら,書いてあるコードをそのままメモ帳に記入する。
⑤ 書けたら,「ファイル」>「名前を付けて保存」で,「学籍番号」フォルダ内に保存する。
・ファイル名:学籍番号.html←学籍番号を「半角英数」で入力してファイル名にする
・文字コード:UTF-8
・保存先:「デスクトップ」>「学籍番号」フォルダ
⑥ 保存したファイル「学籍番号.html」が,「デスクトップ」>「学籍番号」フォルダ内にあるかどうかを確認する。
⑦ 保存したファイル「学籍番号.html」を右クリックし,「プログラムから開く」>「Internet Explorer」を選択する。
⑧ Internet Explorer(Webブラウザ)が起動し,今作成したファイルがウェブページとして表示されれば成功です。

ソースコード01

ファイル名:「学籍番号.html」

<!DOCTYPE html>
<html lang="ja">

<head>
<meta charset="UTF-8">
<title>はじめてのページ</title>
</head>

<body>
こんにちは!
</body>
</html>

 

ウェブサイトの制作
ソースコードを元に,新しい行を追加していきます。

作業手順
① 作成したファイル「学籍番号.html」を複製して,別のファイルをつくる。複製したファイルの名称を,「index.html」に変更する。
② 「index.html」を,メモ帳で開く。
③ どの行になにが書いてあるのかを自分で覚えておくために,コメントを記入する。
・タグの構造やページ構成をわかりやすくするため,ソースコードの中に覚え書きとして書いておくテキストを,「コメント」と呼んでいます。
・HTMLファイルにコメントを記入するときは, <!– と –> で囲います。
・<!– と –> で囲われた中身は,ブラウザで開いたときには表示されません。
④ 新しく制作するWebページの見出しと本文を記入する。
・ここでは,<h1> 〜 </h1>,<p> 〜 </p>というタグで中身を区切ります。
・このタグは,後で文字のサイズなどを指定するときに,目印として必要になります。
⑤ このWebページの制作者の情報を,ページの末尾に記入する。
・制作者情報は,<address> 〜 </address>というタグで区切るという決まりがあります。

ソースコード02_01

ファイル名:「index.html」

<!DOCTYPE html>
<html lang="ja">

<!-- ここからhead -->
<head>
<meta charset="UTF-8">

<!-- ページのタイトルをここに入れる -->
<title>タイトルを記述しましょう</title>

<!-- スタイルシートの場所を指定している -->
<link rel="stylesheet" href="style.css" type="text/css">

</head>
<!-- headここまで -->

<!-- ここからbody -->
<body>
<!-- サイトの見出しとその説明 -->
<h1>サイトの見出し</h1>
<p>本文を記述します。</p>
<!-- addressには制作者の情報を入れる -->
<address>制作者:自分の名前(愛知淑徳大学創造表現学部メディアプロデュース専攻)</address>

</body>
<!-- bodyここまで -->
</html>

⑥ 文字の大きさや色を指定するため,スタイルシートを作成し,HTMLファイルを関連づける。
・メモ帳で新規ファイルを作成し,そのファイルの中にスタイルを記述します。
・スタイルシートには,「style.css」というファイル名をつけて,「index.html」と同じフォルダに入れておきます。
・「index.html」のファイルとスタイルシート「style.css」を関連づけるためには,<link>というタグを<head>の中に記入します。
⑦ 作成したスタイルシートの中に,スタイルを書き込む。
・スタイルは,CSSというスタイル言語を使って指定します。
・スタイルシートでの色の指定は,「#○○○○○○」という英数字でおこないます。この英数字は,RGBの数値を16進数であらわしたものです。
・「#000000」は,赤・緑・青すべてが0(点灯しない)なので,画面の表示色は黒になります。「#ffffff」は,赤・緑・青すべてがf(もっとも明るい)なので,画面の表示色は白になります。
・どのような色になるのかを調べたい場合は,http://www.colordic.org/ などを参照。

ソースコード02_02

ファイル名:「style.css」

@charset "utf-8";

/* ここからスタイルをはじめます */

body {
color: #444444;
}

h1 {
font-size: 36px;
font-family: Verdana, Helvetica, sans-serif;
color: #191970;
font-weight: normal;
}

p {
font-size: 16px;
line-height: 1.8;
font-family: Verdana, Helvetica, sans-serif;
}

address {
font-size: 14px;
font-style: normal;
}

【font-weightの種類】
normal…標準の太さ
bold…一般的な太字
lighter…相対的に一段階細く
bolder…相対的に一段階太く

【font-familyの種類】
sans-serif…ゴシック系のフォント
serif…明朝系のフォント
cursive…筆記体・草書体のフォント
fantasy…装飾的なフォント
monospace…等幅フォント

【font-styleの種類】
normal…標準フォントで表示
italic…イタリック体フォントで表示
oblique…斜体フォントで表示

⑧ 以上の変更が反映されているかどうか,Webブラウザで開いて確認する。

2023ウェブデザイン第1回

このWEBページは、愛知淑徳大学創造表現学部メディアプロデュース専攻 ウェブデザイン第1回の授業資料になります。
この授業では、HTMLやCSSといった、基本的な言語=コードを用いてウェブデザインの制作を進めていきます。
各自でテーマを選定し、調査や素材集めを進めたうえで、ウェブデザインのレイアウトを進め、HTMLとCSSを用いてコーディングを進めて完成させます。

完成したウェブサイトは、授業内でプレゼンテーションしてもらいます。

授業計画
第1回  ガイダンス、HTMLとは、ソースコードの記述
第2回  HTMLとCSSの基礎1:タグとは、CSSとは
第3回  HTMLとCSSの基礎2:スタイルの定義
第4回  HTMLとCSSの基礎3:リンクとナビゲーション
第5回  HTMLとCSSの基礎4:スタイルの調整
第6回  HTMLとCSSの基礎5:画像の配置、リストとテーブル
第7回  企画書作成
第8回〜第13回 課題制作
第14回・第15回 講評会

課題と評価
第1課題 練習用WEBページの制作:20%
企画書 独自制作のWEBページのための企画・計画:10%
第2課題 企画を元にしたWEBページの制作:30%
講評会*: 発表30%+相互評価10%

*講評会は定期試験に準ずる扱いとします。

ソースコードの記述
かんたんなソースコードを自分で書いてコンピュータ上に保存し,それをWebブラウザで開いて,Webページとして表示されるかどうかを試します。

作業手順
① PCを起動し,デスクトップに新しいフォルダをひとつ作成する。
② 作成したフォルダの名前を,自分の学籍番号にする。
③ 「スタートメニュー」>「すべてのプログラム」>「アクセサリ」>「メモ帳」を起動する。
④ 下記のソースコード01を見ながら,書いてあるコードをそのままメモ帳に記入する。
⑤ 書けたら,「ファイル」>「名前を付けて保存」で,「学籍番号」フォルダ内に保存する。
・ファイル名:学籍番号.html←学籍番号を「半角英数」で入力してファイル名にする
・文字コード:UTF-8
・保存先:「デスクトップ」>「学籍番号」フォルダ
⑥ 保存したファイル「学籍番号.html」が,「デスクトップ」>「学籍番号」フォルダ内にあるかどうかを確認する。
⑦ 保存したファイル「学籍番号.html」を右クリックし,「プログラムから開く」>「Google Chrome」などWebブラウザを選択する。
⑧ Google ChromeなどWebブラウザが起動し,今作成したファイルがウェブページとして表示されれば成功です。

ソースコード01

ファイル名:「学籍番号.html」

<!DOCTYPE html>
<html lang="ja">

<head>
<meta charset="UTF-8">
<title>はじめてのページ</title>
</head>

<body>
こんにちは!
</body>
</html>
練習課題

ソースコードが完成したら、bodyタグで囲まれた箇所<body>〜</body>に、
文章を加えてみましょう。

加える文章:本授業への抱負