전체 글23 Call by value, Call by reference call by value(값에 의한 호출) 함수를 호출 하면서 값을 복사하여 전달하는 방식을 값에 의한 호출(Call by value) main() 함수에서 swap() 함수로 변수를 전달하면서 변수를 직접 참조하는게 아니라 변수의 값이 복사되기 때문에 swap() 함수안에서 a, b를 바꿔도 복사본이 바뀌고, main() 함수 안의 변수 값은 바뀌지 않음. Call by Reference (주소에 의한 호출) 함수에서 값의 복사가 아닌 주소를 다른 함수에 전달하는 방식이 주소에 의한 호출 (Call by reference) main() 함수에서 swap() 함수로 a, b의 주소값을 전달한다. swap()함수의 매개변수는 주소값을 저장할 수 있는 포인터여야만 한다. swap()함수안에 포인터 변수는 m.. 2023. 4. 28. 이중포인터 정수형 변수 생성 : int a; 포인터 변수 : 주소를 저장할 수 있는 변수. 정수형 포인터 생성 : int *b = &a; 그렇다면 포인터 변수의 주소를 저장할 수 있는 변수는 어떻게 만들어야 하나. 포인터의 포인터 변수를 사용하여 만든다. 즉,이중포인터 int **c = &b; 의 형태로 만든다. ex) int a = 10; 정수형 변수 a생성 후 10으로 초기화 (100번지) a에 저장된 값 : 10, a의 주소값 : 100번지 int *b = &a; 정수형 포인터변수 b 생성 후 변수a의 주소값 저장. b에 저장된 값 : 100번지, b의 주소값 : 200번지 int **c = &b; 정수형 이중포인터 변수 C 생성 후 포인터변수 b의 주소값 저장 b에 저장된 값 : 100번지, b의 주소값 :.. 2023. 4. 28. 유니티) 체력바 구현하기 체력바를 만들려면 일단 체력바 소스 이미지가 필요하다. 나는 그냥 소스 이미지를 그림판에서 빈 흰색 그림을 저장을 하여 사용하였다. 일단 하이어라키에 빈 오브젝트로 HpBar를 만들어주고 안에 이미지로 HpBar와 BackGround를 만들어 줬다. 이건 플레이어나 Hp가 있는 오브젝트에 그냥 붙혀 쓰려고 prefab형식으로 만들었다. 크기를 적당히 맞춰준 후 소스이미지를 넣어주고 체력을 빨간색으로 지정하기로 해서 Color를 빨강으로 설정 BackGround는 Hp가 얼마나 달았는지 상대적으로 보여주기 위해그냥 같은 사이즈의 흰색 이미지를 만들었다. 그후에 Image Type을 Filled타입으로, Method를 Horizontal, Fill origin을 Right로 맞춰준다. 이렇게하면 체력바가 오.. 2023. 4. 28. 유니티) 스프라이트 시트 스프라이트 시트란? 스프라이트 시트 : 여러 이미지를 하나의 이미지 파일로 합친 것. 사용이유 : 리소스 관리와 성능 적인 이유때문에. 스프라이트 시트 잘라내기 Sprites폴더에 스프라이트를 클릭하면 이런식으로 인스펙터 창에 나타난다. Sprite Mode에서 기본값인 Single은 하나의 스프라이트를 표현한다. 이것을 Multiple모드로 변경하면 하나의 스프라이트에셋을 개별 스프라이트로 잘라 쓸 수 있다. 그리고 밑에 Apply버튼을 눌러 적용을 한 뒤, Sprite Editor 버튼을 눌러 편집 창으로 이동합니다. 에디터에서 Slice버튼을 누르면 Type가 보이는데 어떻게 자를 것 인지에 대한 선택으로 Automatic : 자동으로 스프라이트를 인식하여 자릅니다. 불규칙적으로 배치가 되어 있을때.. 2023. 4. 28. 이전 1 2 3 4 ··· 6 다음