Unityで始まるゲーム開発: Part 1. コンピュータ構造入門
UDevApp
非専攻者のためにプログラミングに敷かれた知識であるコンピュータ構造の原理を説明する講義です。 講義の目的は、プログラムの動作の原理に精通していることです。
입문
Computer Architecture
C#을 실행하기 위한 유니티의 기초적인 인터페이스
유니티의 C# 기초 프로그래밍
프로그래밍을 하기 위한 컴퓨터의 기본동작과 구조
비전공자 & 입문자를 위한 게임 개발!
C# 프로그래밍 입문으로 게임 개발의 첫걸음을 떼보세요.
게임을 만들기는 지금까지 아주 어려운 일로 인식되어 왔습니다. 하지만 유니티와 같은 게임엔진의 발전으로 이제 1인개발자도 게임을 개발하는 것이 가능해졌습니다. 유니티 게임엔진을 배포하는 유니티 테크놀로지는 다음과 같은 캐치프라이즈를 내걸고 있습니다.
“배우기 쉬운 게임엔진”
하지만 비전공자들에겐 이것은 그림의 떡입니다. 게임엔진을 통한 게임 개발에 꼭 필요한 핵심 능력이 있기 때문입니다. 바로 프로그래밍입니다. 프로그래밍 기술이 없이는 게임을 만들수 없습니다. 또한 프로그래밍은 배우기 아주 난해합니다. 배우기 쉬운 게임엔진이라는 캐치프라이즈는 원래 게임을 개발하던 이들에게 적용되는 문제입니다. "배우기 쉬운" 이라는 요건을 충족시키기 위해서는 프로그래밍의 능력이 절실히 필요합니다.
그러한 문제를 해결하기 위해 이 강좌를 만들었습니다.
게임개발에 앞서 유니티에만 필요한 기능을 소개하면서 유니티로 학습해 나가는 C# 프로그래밍 강의입니다.
비전공자는 게임을 개발하기 시작하면 방대한 양의 공부를 해야 합니다. 우선 프로그래밍입니다. 유니티의 기능도 필요합니다. 어느 정도가 필요한지 알 수 없기에 무조건 배웁니다.
C#의 경우도 같습니다. 책에 있는 C#의 기능을 학습하려면 방대한 분량의 학습이 필요합니다. 하지만 그렇다고 너무 적은 부분을 공부하면 원리를 모르기 때문에 응용이 불가능합니다. 인터넷에 있는 짧은 시간의 C# 강의를 따라서 배우고 공부할 수 있는 사람은 개발자들 뿐입니다. 프로그래밍에 입문하기 위해서는 기초가 되는 프로그래밍의 원리부터 학습해야 그것이 가능합니다.
이 강의는 유니티의 게임개발에 필요한 기초적인 C#을 배우기 위해 컴퓨터의 기초적인 원리부터 학습합니다. 초보자라도 이 강의의 학습을 완료하신다면 다른 게임개발의 강의들을 쉽게 공부할 수 있을 것입니다. 그래서 다른 프로그래밍 강좌와는 다르게 문법의 원리를 알아보기 위해 내부적인 구조를 조금씩 확장하여 설명합니다. 굳이 어려운 문법을 사용하지 않아도 프로그래밍은 학습이 가능합니다. for 문과 if 문과 함수만 배워도 프로그래밍은 가능합니다.
그래서 이 강의에서는 유니티의 기능과 C#의 구조지향적 프로그래밍을 같이 이해하고 실습하는 내용이 강의 분량의 절반을 넘어갑니다. 객체지향은 중반 이후에 나옵니다. 기본적인 로직을 작성하기 전까지 프로그래밍을 작성할 수 없기 때문입니다. 고급문법의 강의를 배워야 할 시점은 게임을 하나라도 만들고 나서입니다.
비전공자들과 입문자들이 게임개발의 전 단계인 프로그래밍을 어떻게 학습할 수 있을지에 대해 알려드리기 위해 이 강의를 제작했습니다.
본 강의는 유니티의 C# 프로그래밍에 대한 내용을 비전공자들과 입문자들의 입장에서 어떻게 접근할 수 있는지 알려주는 강의입니다. 그렇다고 쉽지만은 않습니다. 예를 들어 if문과 for문을 설명할때 메모리가 동작하는 예제를 설명하고 나서 이것을 프로그래밍으로 작성하는 방법을 같이 설명합니다. 비슷한 구조의 작은 예제를 소개하는 것을 보시면 이걸 왜 해야 하는 것일지에 대한 궁금증이 들 수도 있습니다. 하지만 프로그래밍은 컴퓨터의 내부 원리를 이해하고 컴퓨터에 말을 거는 작업입니다. 내 말대로 컴퓨터가 동작하기 위해서는 메모리가 어떻게 동작하는지를 알아야 문법을 작성할 수 있습니다. 다른 사람에게 말을 하기 위해서 다른 사람의 생각을 역지사지하는 것과 똑같습니다.
그리고 그것이 가능해야 디버깅이 가능해집니다. 프로그래밍은 원래 고난과의 싸움입니다. 얼토당토 하지 않은 말도 안되는 오류가 나올수 있습니다. 이러한 문제를 해결하기 위해서는 기초가 필수적입니다.
입문자분들이나 초보자분들의 경우에는 기초 C# Part 2 내용을 모르면 이 다음강의인 Part3 인 유니티로 시작하는 슈팅게임개발 강의의 수강이 어렵습니다. 하지만 이 강의를 배우고 나면 학습이 가능합니다.
언어를 배우기 전에 원리부터 학습합니다. 원리를 알면 응용이 가능합니다. 이해를 하지 않고 따라하기만 하면 프로그래밍을 할 수 없습니다.
강의당 10분의 학습시간을 넘지 않습니다. (넘는 강의도 있습니다만 넘어도 된다고 생각하기에 그렇게 제작했습니다. 길어서 학습에 방해가 된다고 생각하면 나누거나 다시 찍도록 하겠습니다)
C#의 메모리구조를 살펴보면서 실제 C# 언어의 기본 문법을 학습하고 간단한 콘솔 프로그래밍을 개발하여 구조지향과 객체지향의 프로그래밍을 습득하는 것을 목표로 합니다.
이 강의를 듣고 나면 C# 언어의 내부 구조를 예상하여 개발 할 수 있게 됩니다. 다만 입문자의 경우 길게 잡고 하루 30분씩 꼭 연습이 필요합니다. 짧게는 2주에서 한달부터 길게는 3달까지 잡으시는 것이 좋습니다.왜냐하면 장기기억으로 쌓여야 이것이 당연한 것이 되어 생각한 대로 프로그래밍을 할 수 있게 됩니다. 유니티에 접근하는 초보자들이나 비전공자들에게 큰 도움이 될 것으로 생각합니다.
현재 강의는 약 10시간 분량이며 110개 정도의 강의로 이루어져 있습니다.
이 강의에서는 학습을 하시고 꼭 실습을 하시는 것이 좋습니다. 특히 비전공자는 평소에 프로그래밍으로 일을 하지 않기 때문에 그냥 보기만 해서는 절대 프로그래밍을 습득할 수 없습니다.
이해를 하시고 나서 필요한 핵심적인 내용을 암기하셔야 합니다. 그리고 실습해야 합니다.
에버노트를 사용하여 강의를 배울때 정리하는 법을 알려드립니다.
구글 스프레드시트를 이용하여 학습의 진행률을 볼 수 있는 방법도 알려드립니다.
간단한 내용들이지만 비전공자는 시간이 없습니다.(전공자도 마찬가지입니다)
최단 시간에 최적의 연습을 할 수 있는 방법을 설명해드립니다.
Q. 비전공자도 들을 수 있나요?
A. 네, 비전공자와 입문자가 들을 수 있도록 제작한 강의입니다. 전공자 분들에게는 조금 쉬울수도 있습니다만 메모리구조를 복습하는 차원에서도 들으시면 좋습니다.
Q. 이 "C# 프로그래밍"를 배우면 무엇이 좋은가요?
A. 원리를 알아야 응용이 가능합니다. 프로그래밍을 하는 것만이 아닌 오류를 잡을 때도 원리를 알아야 응용을 할 수 있습니다. 프로그래밍을 할 때 오류가 생긴다고 해서 다른 누군가가 문제를 해결해주지 않습니다. 원리를 알고 나면 오류를 수정할 수 있습니다. 또한 이해가 깊어져서 응용이 가능합니다.
Q. "C# 프로그래밍"의 강의를 들으면 어떤 일을 할 수 있나요?
A. 실제 유니티를 게임을 만들기 위한 준비가 가능합니다. 이 다음강의인 Part 3 의 슈팅게임개발의 강의를 들으실 수 있습니다. 또한 유니티로 다른 프로그램을 만들 때 큰 도움이 됩니다.
Q. 이 강의만의 특별한 장점이 있을까요?
A. 처음 볼 때는 어려울 수 있습니다. 하지만 그 단계를 넘어가서 중반 이상 가게 되면 원리에 대한 개념이 생깁니다. 내부구조를 알면 컴퓨터가 어떻게 동작하는지 소스코드가 어떻게 동작하는지를 예상할수 있습니다. 그렇게 되면 프로그래밍뿐만 아니라 디버그의 실력도 향상됩니다. 오류가 있어도 해결할 수 없다면 그것만큼 힘든 일이 없습니다. 이런 상황을 예방하기 위해 원리와 메모리에 대한 공부가 필요합니다.
학습 대상은
누구일까요?
코딩을 처음 접하는 분
게임을 개발하기에 앞서 유니티를 실행해보고 싶으신 분
선수 지식,
필요할까요?
폴더와 파일을 알고 컴퓨터를 사용할 수 있는 분
5,398
명
수강생
183
개
수강평
151
개
답변
4.9
점
강의 평점
4
개
강의
안녕하세요. UDevApp 의 최형선이라고 합니다.
무엇인가를 만들어낸다는 것은 정말로 행복한 일입니다.
세상에 나의 제품이 나올 때의 느낌은 스티브잡스가 느낀 그것이나
여러분들이나 저와 다르지 않다고 생각합니다.
여러분들에게 그러한 감정을 드리는 사람이 되고 싶습니다.
네이버카페와 블로그와 유튜브에도 많이 찾아와 주시길 바랍니다.
.
https://cafe.naver.com/ultimategunz(카페바로가기)
http://blog.naver.com/siwoo2406(블로그 바로가기)
https://www.youtube.com/user/ChoiHyungSun/(유튜브 바로가기)
감사합니다.
전체
111개 ∙ (12시간 22분)
해당 강의에서 제공:
1. 유니티 기본 기능 소개
00:47
2. 게임엔진
02:46
3. 통합개발환경
04:44
4. 유니티 다운로드와 프로젝트
07:22
5. 윈도우즈 유니티 다운로드
05:57
7. 프로젝터뷰, 인스펙터뷰
04:07
8. 씬뷰, 인스펙터뷰
05:18
9. 계층뷰
05:52
10. 게임뷰와 뷰들의 관계
04:05
11. 게임오브젝트의 소개
07:18
12. 컴포넌트
04:37
13. 스크립트 컴포넌트의 소개
05:20
14. 기초 C# 프로그래밍 소개
00:39
15. 프로그래밍과 소스코드
06:22
16. 콘솔 소개
04:37
17. 콘솔 프로그램
08:00
18. 문법의 오류와 프로그래밍 학습
06:14
19. 콘솔 프로그램의 순차
06:37
20. 빌드와 게임실행
08:00
21. 컴퓨터와 메모리
04:01
22. 변수의 기초
09:27
23. 변수의 읽기와 쓰기
09:35
24. 프로그래밍 작성시 사고방법
08:37
25. 변수를 선언하면서 대입
04:22
26. 자료형 소개
00:55
27. float와 리터럴
07:28
28. 리터럴 대입시 형변환
07:21
29. 리터럴 대입시 형변환 오류수정
05:51
30. 변수 대입시 형변환
06:23
31. 변수 대입시 형변환 오류수정
07:33
32. 두 수 더하기와 기계어
06:31
34. 논리적 오류와 수정
07:31
35. 디버깅
11:40
36. 사칙연산의 형변환
13:18
37. 나눗셈의 형변환
12:33
38. 다른 형태의 변수
11:41
39. 변수의 이름규칙
03:58
40. 평균을 구하는 프로그램
05:19
전체
33개
4.8
33개의 수강평
수강평 1
∙
평균 평점 5.0
5
プログラミング 初めてみる初心者たちが他の講義では説明が恥ずかしくて曖昧に理解しているが、ある瞬間からは大江理解はしているようだが、何か曖昧で蒸し暑い状態でいったん進度を出なければ完全理解できずに進むことが多いが、この講義は全く違う。 視覚画像アニメーションまで総動員して、動作原理まで確実に理解しながら渡せるようにします。視覚的にも刻印してくれてこれが頭の中でより簡単に刻印される。 他の講義も適度に視覚画像を使用するが、李講義はその視覚画像化が独歩的に優れたものにした。根本が異なる視覚化である。 単に画像の視覚化数章ではなく、プロセス自体の視覚化である これがどの程度かというと、コードを解釈する際、頭の中でその過程がイメージされるレベルである。これになってはいけないことが本当の大きな違いになる。以前他の入門講義では体験できなかった結果である。これはおそらくこの講義を企画する時から、この部分の重要性を念頭に置いたものとみられる。 また、講義を1回精読するだけでも重要な部分は、自然に何度も繰り返し理解し、刻印するように緻密に設計されている、細かくて素晴らしい講義。 初心者たちが復習ちゃんとしないことを念頭に置いて、緻密に設計した感じである。 正直初心者向けという他の講義はほとんどより中後半から折りたたんだが、 その理由が序盤にはあまりにも簡単で、すべて理解するが、中盤からは少しずつ理解できない部分が生じながら大綱は理解するが、曖昧に理解したものがたまって累積される。 すると、結局はこういうものが非数になって後半部からはなんと叫んだのか理解できず、ただついてコードの書き換えレベルになる。講師たちも後半にはそのように書いてください。説明は大丈夫でスキップしました。内容なのに、何か講義序盤の入門者を扱っていたその感じの説明ではないw。 受講生たちは完強する前まではまだ入門者なのに、講師の立場ではこういうとこんなことを細かく説明しなくても分かるだろうね~。ところが講師はもう講義後半になれば講義を早く仕上げたいのか、講義内容がどんどん無声になり、入念さとは距離が遠くなる…これが大多数入門者向け講義のパターンである。 結局、後には代替の話はなぜこんなに話はなぜこんなのかその小さな符号一つの意味まで混乱する瞬間まで来るが、その頃からそろそろ諦めることになる。 このため、より早くも途中で開かれた講義が3~4つほどになる。 これがトップクラスの良い講師でなければ、本人は当然考える多くの概念や活用技術が初心者にはどれほど混乱するのか、どのレベルの入念な説明が必要なのか感を捉えにくいからだと考える。自分が上手なことと他人が上手く教えることとは全く違うので、ほとんどの普通の講師たちは初心者のための講義をしても自分も知らないようにこのような部分をどこかに逃すことになると思う。ところがこれが怖いのに、ところで、そのように穴あけた理解度が後には猛烈なように近づいて渇きになって、あきらめることになる。 結局、そのような講義は事実は本当の初心者用ではなかったようで、本物の初心者が概念を確実に固めることができる入念な講義はこれが初めて。 不思議なことに、この講義では初心者の立場でも曖昧に理解し、蒸し蒸しに進むことなくまだまだ完全に理解しながら進行中。既存に触れた初心者入門者向け講義というものと質的に非常に非常に異なる。 おそらく他の入門者向け講義を体験し、イ・ガンの聞く受講生は、イ・ガン医がどれほど圧倒的に優れており、根本が他の講義なのか骨折に感じるだろうし、 イ講義で初めて入門する受講生は自分の能力に優れており、講義内容をよく理解することと勘違いしてうんざりするだろうと思う。笑 年にレビューはうまくいかなければ1〜2回残す私がレビュー月くらいであれば言う。 ありがとうございます。 こういう方がずっと良い講義をもっと上げてほしいだけだ。
本当に慎重で丁寧な受講に感謝します あなたが言ったように設計し、難しさを調整しながら設計して作ったものが正しいです 知ってくれて理解していたら本当に私も力が出ているようです^^ 実際にも大きな力になります。 後でさらに修正して書きましょう。 ありがとう
수강평 4
∙
평균 평점 5.0
5
100回聞くと、一度見るだけではないという言葉が本当にです。 白門が不余一見という漢字聖語がぴったりですね。 図でコードの内部構造を描いて一つ一つ説明してくれます。 本当に簡単に聞きましょう。 なぜこんな講義が今までなかったのかと思いました。 一生懸命聞いてよく学びます。 難しい内容を理解できるように良い講義を作ってくれてありがとう。 絶えず良い講義を上げてくれますか? ㅎㅎ楽しみにしています。 ありがとうございます。
良い受講評 ありがとうございます。 わかりやすい講義でもっと作りましょう。 ^^
수강평 2
∙
평균 평점 5.0
5
初心者や非専攻者が基礎からしっかりと固めていき始めるのに本当に良い講義です。 C#文法を他の講義のように順番に学ぶのではなく、コンピュータのメモリ構造に応じてどのように機能するかを非常に簡単に明確に教えてくれて理解しやすいです。 そして各団員講義が10分内外で構成されており、一日に勉強する量が負担がありません。 先生に質問したら答えやフィードバックも早くていいですね。何より先生が運営するカフェで様々な情報と交流を通じてゲーム開発というテーマでコミュニケーションができ、よりやる気になります。 プログラミング入門講義をはじめ、シューティングゲーム開発講義とその後に上がってくるプロトタイプ講義まで、このカリキュラムだけが着実に誠実に追いつくなら、いつの間にかっこいい1人ゲーム開発者になっていると確信しています。
良い受講評 ありがとうございます。勉強頑張って良い結果になりますように。 より良い講義を作りましょう。 ^^
수강평 5
∙
평균 평점 5.0
5
正直なところ、どのプログラミング講義もこのように非専攻者に簡単に説明できる講義は 珍しいと思います。 (私も非専攻者としてswiftでiPhoneアプリ開発で初めて始めたのですが) この講義でプログラミングを始めた場合、プログラミング はるかに簡単に感じられたようです。 趣味でゲーム一つ開発してみようか?軽く始めたけど… iOS開発にもまた役に立つ部分も多いですね。 (ゲームループ、メモリ構造など) それだけ基礎を固く 固めてくださる講義だと本当に満足です。 星5つではなく星10個お願いします。 本当に単純な関心に趣味で単に始まったが.. (今、本講義のC#文法70%ほど終わったが…) 早く次の講義も終わって 本当にシューティングゲームまで作ってアプリストアに登録してみるべきですねㅎㅎ 本当にありがとうございます。講師:)
良い受講評 ありがとうございます。まだ完了していない講義がありますが、早く上げるにはクオリティが落ちるようでゆっくり上がるようになりますね。できるだけ早く上げていただきます。よろしくお願いします。 ^^
수강평 2
∙
평균 평점 5.0
2025 추석맞이 감사할인 중 (5일 남음)
₩7,057
24%
₩77,000
지식공유자님의 다른 강의를 만나보세요!
같은 분야의 다른 강의를 만나보세요!