Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
G
graphicsTeamProject
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
jeongtae Lee
graphicsTeamProject
Commits
b13cffa1
Commit
b13cffa1
authored
1 year ago
by
jeongtae Lee
Browse files
Options
Downloads
Patches
Plain Diff
modify human model and make moveTorso
parent
a1ff9c1f
No related branches found
No related tags found
No related merge requests found
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
example1/example1.html
+3
-0
3 additions, 0 deletions
example1/example1.html
example1/subwaySurfer.js
+131
-128
131 additions, 128 deletions
example1/subwaySurfer.js
with
134 additions
and
128 deletions
example1/example1.html
+
3
−
0
View file @
b13cffa1
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<html>
<head>
<head>
<title>
Subway Surfer
</title>
<title>
Subway Surfer
</title>
<script
src=
"../common/webgl-utils.js"
></script>
<script
src=
"../common/webgl-utils.js"
></script>
...
@@ -17,6 +18,7 @@
...
@@ -17,6 +18,7 @@
}
}
</style>
</style>
</head>
</head>
<body>
<body>
<canvas
id=
"gl-canvas"
width=
"512"
height=
"512"
></canvas>
<canvas
id=
"gl-canvas"
width=
"512"
height=
"512"
></canvas>
<button
id=
"restart-button"
onclick=
"startGame()"
>
Restart
</button>
<button
id=
"restart-button"
onclick=
"startGame()"
>
Restart
</button>
...
@@ -41,4 +43,5 @@
...
@@ -41,4 +43,5 @@
}
}
</script>
</script>
</body>
</body>
</html>
</html>
\ No newline at end of file
This diff is collapsed.
Click to expand it.
example1/subwaySurfer.js
+
131
−
128
View file @
b13cffa1
...
@@ -38,18 +38,18 @@ var leftLowerLegId = 7;
...
@@ -38,18 +38,18 @@ var leftLowerLegId = 7;
var
rightUpperLegId
=
8
;
var
rightUpperLegId
=
8
;
var
rightLowerLegId
=
9
;
var
rightLowerLegId
=
9
;
var
scaleFactor
=
0.5
;
//
전체 크기를 줄이기 위한 스케일 팩터
var
scaleFactor
=
0.5
;
//
��ü ũ�⸦ ���̱� ���� ������ ����
var
torsoHeight
=
2.0
*
scaleFactor
;
var
torsoHeight
=
1.4
*
scaleFactor
;
var
torsoWidth
=
1.
5
*
scaleFactor
;
var
torsoWidth
=
1.
2
*
scaleFactor
;
var
upperArmHeight
=
1.0
*
scaleFactor
;
var
upperArmHeight
=
0.8
*
scaleFactor
;
var
lowerArmHeight
=
1.0
*
scaleFactor
;
var
lowerArmHeight
=
0.7
*
scaleFactor
;
var
upperArmWidth
=
0.5
*
scaleFactor
;
var
upperArmWidth
=
0.5
*
scaleFactor
;
var
lowerArmWidth
=
0.
5
*
scaleFactor
;
var
lowerArmWidth
=
0.
4
*
scaleFactor
;
var
upperLegWidth
=
0.5
*
scaleFactor
;
var
upperLegWidth
=
0.5
*
scaleFactor
;
var
lowerLegWidth
=
0.
5
*
scaleFactor
;
var
lowerLegWidth
=
0.
4
*
scaleFactor
;
var
lowerLegHeight
=
1.0
*
scaleFactor
;
var
lowerLegHeight
=
1.0
*
scaleFactor
;
var
upperLegHeight
=
1.0
*
scaleFactor
;
var
upperLegHeight
=
0.8
*
scaleFactor
;
var
headHeight
=
0.75
*
scaleFactor
;
var
headHeight
=
0.75
*
scaleFactor
;
var
headWidth
=
0.75
*
scaleFactor
;
var
headWidth
=
0.75
*
scaleFactor
;
...
@@ -59,7 +59,8 @@ var numNodes = 10;
...
@@ -59,7 +59,8 @@ var numNodes = 10;
var
numAngles
=
11
;
var
numAngles
=
11
;
var
angle
=
0
;
var
angle
=
0
;
var
theta
=
[
0
,
0
,
0
,
0
,
0
,
0
,
180
,
0
,
180
,
0
,
0
];
var
theta
=
[
0
,
0
,
180
,
110
,
180
,
110
,
180
,
0
,
180
,
0
,
0
];
var
moveTorso
=
[
0
,
0
,
0
];
var
stack
=
[];
var
stack
=
[];
var
figure
=
[];
var
figure
=
[];
...
@@ -138,26 +139,27 @@ function initNodes(Id) {
...
@@ -138,26 +139,27 @@ function initNodes(Id) {
case
torsoId
:
case
torsoId
:
m
=
translate
(
0.0
,
0.5
*
torsoHeight
,
0.0
);
m
=
translate
(
0.0
,
0.5
*
torsoHeight
,
0.0
);
m
=
mult
(
m
,
rotate
(
theta
[
torsoId
],
0
,
1
,
0
));
m
=
mult
(
m
,
rotate
(
theta
[
torsoId
],
0
,
1
,
0
));
m
=
mult
(
m
,
translate
(
moveTorso
[
0
],
moveTorso
[
1
],
moveTorso
[
2
]));
figure
[
torsoId
]
=
createNode
(
m
,
torso
,
null
,
headId
);
figure
[
torsoId
]
=
createNode
(
m
,
torso
,
null
,
headId
);
break
;
break
;
case
headId
:
case
headId
:
case
head1Id
:
case
head1Id
:
case
head2Id
:
case
head2Id
:
m
=
translate
(
0.0
,
torsoHeight
+
0.
5
*
headHeight
,
0.0
);
m
=
translate
(
0.0
,
torsoHeight
+
0.
36
*
headHeight
,
0.0
);
m
=
mult
(
m
,
rotate
(
theta
[
head1Id
],
1
,
0
,
0
));
m
=
mult
(
m
,
rotate
(
theta
[
head1Id
],
1
,
0
,
0
));
m
=
mult
(
m
,
rotate
(
theta
[
head2Id
],
0
,
1
,
0
));
m
=
mult
(
m
,
rotate
(
theta
[
head2Id
],
0
,
1
,
0
));
figure
[
headId
]
=
createNode
(
m
,
head
,
leftUpperArmId
,
null
);
figure
[
headId
]
=
createNode
(
m
,
head
,
leftUpperArmId
,
null
);
break
;
break
;
case
leftUpperArmId
:
case
leftUpperArmId
:
m
=
translate
(
-
0.5
*
(
torsoWidth
+
upperArmWidth
),
0.9
*
torsoHeight
,
0.0
);
//
팔을 몸통에 더 가깝게 붙임
m
=
translate
(
-
0.5
*
(
torsoWidth
+
upperArmWidth
),
1.03
*
torsoHeight
,
0.0
);
//
���� ���뿡 �� ������ ����
m
=
mult
(
m
,
rotate
(
theta
[
leftUpperArmId
],
1
,
0
,
0
));
m
=
mult
(
m
,
rotate
(
theta
[
leftUpperArmId
],
1
,
0
,
0
));
figure
[
leftUpperArmId
]
=
createNode
(
m
,
leftUpperArm
,
rightUpperArmId
,
leftLowerArmId
);
figure
[
leftUpperArmId
]
=
createNode
(
m
,
leftUpperArm
,
rightUpperArmId
,
leftLowerArmId
);
break
;
break
;
case
rightUpperArmId
:
case
rightUpperArmId
:
m
=
translate
(
0.5
*
(
torsoWidth
+
upperArmWidth
),
0.9
*
torsoHeight
,
0.0
);
//
팔을 몸통에 더 가깝게 붙임
m
=
translate
(
0.5
*
(
torsoWidth
+
upperArmWidth
),
1.03
*
torsoHeight
,
0.0
);
//
���� ���뿡 �� ������ ����
m
=
mult
(
m
,
rotate
(
theta
[
rightUpperArmId
],
1
,
0
,
0
));
m
=
mult
(
m
,
rotate
(
theta
[
rightUpperArmId
],
1
,
0
,
0
));
figure
[
rightUpperArmId
]
=
createNode
(
m
,
rightUpperArm
,
leftUpperLegId
,
rightLowerArmId
);
figure
[
rightUpperArmId
]
=
createNode
(
m
,
rightUpperArm
,
leftUpperLegId
,
rightLowerArmId
);
break
;
break
;
...
@@ -341,7 +343,7 @@ window.onload = function init() {
...
@@ -341,7 +343,7 @@ window.onload = function init() {
projectionMatrixLoc
=
gl
.
getUniformLocation
(
program
,
"
projectionMatrix
"
);
projectionMatrixLoc
=
gl
.
getUniformLocation
(
program
,
"
projectionMatrix
"
);
gl
.
uniformMatrix4fv
(
projectionMatrixLoc
,
false
,
flatten
(
projectionMatrix
));
gl
.
uniformMatrix4fv
(
projectionMatrixLoc
,
false
,
flatten
(
projectionMatrix
));
viewMatrix
=
lookAt
(
vec3
(
0
,
2
,
6
),
vec3
(
0
,
0
,
-
30
),
vec3
(
0
,
1
,
0
));
// Adjusted for better perspective
viewMatrix
=
lookAt
(
vec3
(
0
,
2
,
6
),
vec3
(
0
,
0
,
-
30
),
vec3
(
0
,
1
,
0
));
// Adjusted for better perspective
// origin:0,2,6
viewMatrixLoc
=
gl
.
getUniformLocation
(
program
,
"
viewMatrix
"
);
viewMatrixLoc
=
gl
.
getUniformLocation
(
program
,
"
viewMatrix
"
);
gl
.
uniformMatrix4fv
(
viewMatrixLoc
,
false
,
flatten
(
viewMatrix
));
gl
.
uniformMatrix4fv
(
viewMatrixLoc
,
false
,
flatten
(
viewMatrix
));
...
@@ -378,7 +380,7 @@ function startGame() {
...
@@ -378,7 +380,7 @@ function startGame() {
score
=
0
;
score
=
0
;
obstacles
=
[];
obstacles
=
[];
currentLane
=
1
;
currentLane
=
1
;
player
.
position
=
vec3
(
lanes
[
currentLane
],
0
,
0
);
player
.
position
=
vec3
(
moveTorso
[
0
],
moveTorso
[
1
],
moveTorso
[
2
]
);
document
.
getElementById
(
"
restart-button
"
).
style
.
display
=
"
none
"
;
document
.
getElementById
(
"
restart-button
"
).
style
.
display
=
"
none
"
;
render
();
render
();
...
@@ -393,12 +395,13 @@ function handleKeyDown(event) {
...
@@ -393,12 +395,13 @@ function handleKeyDown(event) {
if
(
currentLane
<
2
)
currentLane
++
;
if
(
currentLane
<
2
)
currentLane
++
;
break
;
break
;
}
}
player
.
position
[
0
]
=
lanes
[
currentLane
];
moveTorso
[
0
]
=
lanes
[
currentLane
];
player
.
position
[
0
]
=
moveTorso
[
0
];
}
}
function
createPlayer
()
{
function
createPlayer
()
{
return
{
return
{
position
:
vec3
(
lanes
[
currentLane
],
0
,
0
),
// Y-coordinate fixed at 0
position
:
vec3
(
moveTorso
[
0
],
moveTorso
[
1
],
moveTorso
[
2
])
// Y-coordinate fixed at 0
};
};
}
}
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment