This article's documentation is for anything that uses the Source engine. Click here for more information.

$model (QC)

From Valve Developer Community
< Ko
Jump to: navigation, search
English (en)한국어 (ko)Translate (Translate)

UNTRANSLATED string "this is a" see Template:This is a/strings


$model QC 명령어는 SMD(en) 파일을 사용하여 복잡한 모델의 부속의 위치, 이름등을 정해주는 명령어입니다. 간단한 형태의 모델( 모든 배경에 쓰이는 $staticprop (물체)를 포함)들은 $body 명령어를 이용합니다.

Note.png참고:VMT 파일에서 쓰이는 $model (VMT) English 파일과는 다른 명령입니다. 헤깔리지 맙시다.

QC 명령어 문법

$model "<name>" "<filpath>/<reference_model>.smd"
<이름>
이 모델만의 이름을 적어줍니다.
<파일 디렉토리>/<레퍼런스 모델>.smd

예제

$modelname "weapons/shell.mdl"
$cdmaterials "models/weapons/"
$model "Shell" "shell.smd"
$sequence "idle" "shell.smd"

예제에 쓰인 명령어들

$modelname 모델 이름

$cdmaterials 마테리얼 디렉토리 이름 적는곳

$model 모델 $body 명령어와 비슷하지만 좀 더 복잡한 형태의 명령어.

변경 가능한 여러 추가 기능

eyeball
Eyeball. 을 참고 하세요.
eyelid 눈꺼풀
NPC 모델등이 어떻게 눈꺼풀을 움직이는지를 정해 주는 옵션입니다. (예를 들어 "눈 깜박임" 같은…)
<name>
플렉스 콘트롤러에서 쓰일 쉐잎키의 이름을 정해 줍니다. "lowerer", "neutral", "raiser" 등의 다른 이름의 플렉스 컨트롤러의 쉐잎키등을 서로 섞어서 다양한 모양의 눈꺼풀의 모양을 만들수 있습니다.
Note.png참고:무슨 이야기인지 모르겠다. 누가 수정을 좀 해줘요.
"<감정표현파일>.vta"
주로 얼굴의 다양한 감정 표현을 위해 쓰이는 폴리곤 모델의 모프 값을 저장한 VTA 파일의 위치와 이름을 저장하는 변수 입니다.
lowerer <프레임> <height>
프레임 수 expression_file, 눈동자 중심값을 기준으로 눈동자 아래와 아랫쪽 눈꺼품을 조정하기 위한 값
Note.png참고:테스트 바랍니다. 그리고 수정 좀 해주세요.
neutral <프레임> <높이>
프레임 모프값은 expression_file, 눈동자 눈꺼풀 제어를 위한 옵션 수치 - 윗꺼풀 아랫꺼풀을 동시에 움직이는 수치인듯 하다.
raiser <프레임> <높이>
프레임 모프값은 expression_file, 눈동자 눈꺼풀 제어를 위한 옵션 수치 - 윗꺼풀만을 움직이는 수치인듯 하다.
split <distance>
중심점 0으로 기준으로 반대쪽 눈꺼풀 모프 타겟과는 좀 다른 수치를 입력 가능하게 끔 해주는 옵션인듯 하다.
eyeball <눈알이름>
플렉스 콘트롤러에 의해 움직이게 될 눈알의 이름을 정해 주게 됩니다.
Note.png참고:눈알 이름은 영문으로 씁니다.
flexfile
flex
flexpair
defaultflex
flexcontroller
localvar
플렉스 에니메이션 English 을 참고.
mouth
mouth (int(en)|입의 수치) (플렉스 콘트롤러 이름) (뼈(Bone)의 이름) (float(en)|X) (float(en)Y) (float(en)Z)
입의 모양을 정해줍니다. 각가의 입모양은 순번을 가지고 0에서 부터 시작 되는 숫자로 순차적으로 저장이 됩니다. 여기서 X,Y,Z는 실수값입니다. 전면 벡터 값을 이용합니다.
spherenormals
spherenormals (재질 이름) (float(en)|X) (float(en)|Y) (float(en)|Z)
재질 이름
모델의 부분만 재질 적용을 하려 할때 쓰입니다.
X, Y, Z
물체의 줌심점을 기준으로 X, Y, Z 값으로 좌표 지정을 합니다.
이 옵션은 선택하였거나 조작 하려고 하는 메쉬의 노멀을 옵션에 적힌 X,Y,Z 값을 이용해서 바꿉니다.
This option will change the normals of the indicated mesh to point to (or from) the vector specified using X, Y, Z. Faces that are facing away from the vector will have normals pointing away from vector. All other faces, including coplanar faces will have normals pointing towards the vector. In effect, shading will be done as though all the faces are parts of a sphere centered at vector.

좀더 복잡한 QC 파일 예제

sourcesdk_content\hl2\modelsrc\humans_sdk\Male_sdk\Male_06_sdk.qc:

$model male_06 "male_06_reference.smd"{
	eyeball righteye "ValveBiped.Bip01_Head1" -1.2711 -4.2197 67.5593 "eyeball_r" 1 4 "pupil_r" 0.63
	eyeball lefteye "ValveBiped.Bip01_Head1" 1.3572 -4.2197 67.5514 "eyeball_l" 1 -4 "pupil_l" 0.63

	eyelid  upper_right "male_06_expressions" lowerer 1 -0.2621 neutral 0 0.1287 raiser 2 0.2467 split 0.1 eyeball righteye
	eyelid  lower_right "male_06_expressions" lowerer 3 -0.3409 neutral 0 -0.2156 raiser 4 -0.0736 split 0.1 eyeball righteye
	eyelid  upper_left "male_06_expressions" lowerer 1 -0.2621 neutral 0 0.1287 raiser 2 0.2467 split -0.1 eyeball lefteye
	eyelid  lower_left "male_06_expressions" lowerer 3 -0.3409 neutral 0 -0.2156 raiser 4 -0.0736 split -0.1 eyeball lefteye

	mouth 0 "mouth" "ValveBiped.Bip01_Head1" 0 1 0     // mouth illumination

	flexfile "male_06_expressions" {
		$include "../standardflex_xsi.qci"
	}

	$include "../facerules_xsi.qci"
	$include "../bodyrules_xsi.qci"

}

참고 자료