E D R , A S I H C RSS

C++3DGame

1. 3D ธฐดˆ

1.1. 1. ขŒํ‘œ„ ‚ฌšฉํ•˜ธฐ

3D ˜—ญ—„œ˜ ž‘—…„ œ„ํ•ด„œŠ” ‚ฌšฉํ•  ขŒํ‘œ„  •˜ํ•ด• ํ•œ‹ค.

€žฅ ฐ˜ ธ ขŒํ‘œ„ธ ฐฅดํŠธ ขŒํ‘œ„Š” › œกœ ‚ฌšฉํ•    › „ €‚˜ฉฐ „œกœ €ฐธ „ฐœ˜ ถ•ด žˆ‹ค.

ทธฆฌณ , ดŸฐ ฐฅดํŠธ ขŒํ‘œ ํ‘œํ˜„ํ• ˆ˜ žˆŠ” ตฌกฐŠ”.. ‹คŒ ฐ™‹ค.
~cpp 
struct Point3D
{
   float x;
   float y;
   float z;
}

1.1.1. 1.1 ํด ขŒํ‘œ„

"› —„œ ™ชฝ„ ฐ”ณดฉฐ ฃฝชฝœกœ 38„ ํšŒ „ํ•˜ณ , œ„กœ 65„ ํšŒ „ํ•œ ํ›„— ด „ „ ”ฐ 7.47ํ”ํŠธกœ ด™"ํ•˜Š” ฐฉฒ•œกœ œ„˜ „ช…ํ•  ˆ˜ žˆ‹ค. ทธŸฌ‚˜, ˆ˜ํ•™ œกœ ํ’€ ฒฝšฐ,  „ ดฆฌ €ฆฌ ›€งดฉด ฒ˜ฆฌํ•˜ธฐ€ ”šด –ด ค›Œ„‹ค. ทธž˜„œ ดŸฐ ํด ขŒํ‘œ„Š”  œ–ด€ –ด ตธฐ •Œฌธ— 3D—”„—„œŠ” ˜ ‚ฌšฉํ•˜€ •ŠŠ”‹ค.

1.1.2. 1.2 ‹คค‘ ขŒํ‘œ„ ‚ฌšฉํ•˜ธฐ

3D ˜คธŒ œ ‚ฌšฉํ•˜—ฌ ž‘—…ํ•˜‹ค ณดฉด ํ•˜‚˜˜  œกœ ž‘—…ํ•˜Š” ฒƒณด‹ค —ฌŸฌ  „ ฌถ–ด ž‘—…ํ•˜Š” ฒƒด ํšจœจ ž„„ •ŒฒŒ œ‹ค.
˜ˆ “ค–ด, ปดํ“จํ„ ชจธงํ•  ฒฝšฐ ‹คŒ ฝ”“œ™€ ฐ™€ ตฌกฐกœ  €žฅํ• ˆ˜ žˆ‹ค.
~cpp 
struct CPU
{
 Point3D center; // the center of CPU. in world coordinates
 Point3D coord[8]; // the 8 corners of the CPU box relatives to the center point
};
ด ‡ฒŒ ํ•˜ฉด ฒŒž„—„œ CPU ›€ง—ฌ• ํ•  ฒฝšฐ, CPU ทธฆฌŠ”ฐ ‚ฌšฉํ•˜Š” ชจ“  — Œ€ํ•œ ปดํ“จํ„ค‘•™ งŒ ›€งดฉด œ‹ค.

ํ•˜‚˜˜ code[]  ˆŒ€ "„„"ขŒํ‘œ ตฌํ•˜ คฉด ‹คŒ ฐ™€ ฝ”“œ ‚ฌšฉํ•œ‹ค.
~cpp 
struct CPU
{
 Point3D center;
 Point3D coord[8];
 Point3D GetWorldCoord (int index)
 {
   Point3D result;
   result.x = center.x + coord[index].x;
   result.y = center.y + coord[index].y;
   result.z = center.z + coord[index].z;
   return result;
 }
};

CPU::GetWorldCoord(int index)Š” ทธ „„˜ › — Œ€ํ•ด CPU —ฌŸฐœ   ค‘˜ ํ•˜‚˜ ฐ˜ํ™˜ํ•œ‹ค. ‹จ€ coordindex ฐ˜ํ™˜ํ•œ‹คฉด, CPUค‘•™— ํ•ด‹ํ•˜Š” CPU „ ฐ˜ํ™˜ํ•˜ธฐ •Œฌธ— ‚˜ค‘— CPU ทธž  •Œ ›ํ•˜Š” Œ€กœ ทธฆด ˆ˜ —†ฒŒ œ‹ค. ค‘•™„ ›€งดฉด„œ„ CPU  —ฌŸฐœ ชจ‘ ˜ฎธฐŠ” ํšจ ‚ ˆ˜„ žˆ‹ค.

1.2. 2. 3D˜—ญ—„œ 2Dปดํ“จํ„ฐ ํ™”ฉดœกœ

—ญ‹œ‚˜ ‚˜˜ ˆ˜ํ•™˜ ํ•œ„กœ. ทธƒฅ “ฐœฝ ณดฉด„œ „˜–ด ฐ”‹ค. ญ”†Œฆฌธ€Š” ชจฅดฒ ณ . ใ…‹ใ…‹ใ…‹ ทธƒฅ € ธ‹ค “ฐฉด ˜€. ‚˜ค‘— ถธˆํ•˜ฉด ” ํŒŒฒƒด‹ค.

ํ•จˆ˜ ถˆŸฌ “ฐ“ด. €€.. ใ…กใ…ก; –ด ค›Œ.. ํ•ด„ดํ˜•ํ•œํ…Œ –ดด•€.. --;

1.3. 3. ทธž˜ํ”ฝ ํ”„กœทธž˜ฐ ฐœš”


Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:22:44
Processing time 0.0137 sec