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.0131 sec