Loading...
2024. 5. 30. 01:00

Unity 오브젝트를 Prefab으로 만들기

Prefab은 게임 오브젝트의 템플릿, 블루프린트, 객체 지향 프로그래밍의 class 느낌이다 만들어진 오브젝트를 재활용 가능한 형태로 만들어서 어디에서든 사용할 수 있게 한다  class를 만들어놓으면 instance를 생성하는 것처럼 Prefab을 변경시키면 게임의 모든 instance에 업데이트된다 Prefab instance는 독립적으로 수정할 수 있고, 각각의 instance는 다른 instance에는 영향을 미치지 않는다   방법은 hierarchy의 오브젝트를 project 창에 옮기면 된다 이렇게 하면 드래그한 게임 오브젝트의 구조를 포함한 prefab을 생성    그리고 이렇게 prefab으로 만들면, hierarchy에서는 파란색으로 바뀌고 오른쪽에 화살표 표시가 있는데    좌상단에 ..

2024. 4. 25. 02:19

Unity 기본11 - class 상속, is, as 연산자

1. 상속 이미 만들어진 class의 특징을 모두 이어받은 상태에서, 새로운 기능을 추가한다 비슷한 기능을 가진 다른 객체를 만들어야하는데, 조금 다르다는 이유로 완전히 새로 만들어 쓴다면 좋지 않다 이미 만든 코드와 비슷한 코드를 또 만들 필요 없이 가능한 재활용하면서 쉽게 기능을 바꾸거나 추가 할 수 있는 것 코드의 재활용 코드의 재사용성 최근 개발 패러다임은 상속이 그렇게 가치있다고 보지는 않는다.. 그런가? 이전에 만든 Character class는 이름, 체력의 속성과 Hit, Heal, isAlive, Eat 의 method를 가진다 using System.Collections;using System.Collections.Generic;using UnityEngine;public class C..

2024. 4. 24. 02:37

Unity 기본10 - class 만들기

1. class 만들기 scripts에 character.cs c# 스크립트를 만든다 project 창에서 우클릭 - create - c# script하면 만들 수 있다 character.cs 더블클릭해서 visual studio를 연다 Character이름 옆에 MonoBehaviour 제거하고 void start, void update 모두 제거해서 class 틀만 남긴다 using System.Collections; using System.Collections.Generic; using UnityEngine; public class Character { } 클래스 이름, 함수 이름은 대문자로 시작하고 변수 이름은 소문자로 시작하는 것을 관습으로 하고 있다 캐릭터의 이름과 체력을 속성으로 가지고, 맞..

2024. 4. 8. 02:19

데이터 속에 숨은 편향

1. introduction 2016, big data’s disparate impact에서 연구 데이터가 좋으면 모형의 결과도 좋고 편향이 많으면 결과도 그럴 것 사회 자체에서 가지는 많은 편향들이 데이터의 형태로 AI 모델에 들어간다 정확히 어디 있는지는 모르겠지만 숨겨져있는 어떤 패턴에 의해 알고리즘을 사용하다보면 소수의 어떤 그룹들이 의도하지 않은 차별을 당한다 2. bias source 2-1) target variable target variable이나 class label을 정의하는 순간부터 bias가 들어갈 수 있다 예를 들어 ‘good employee’는 어떻게 정의해야? 누구는 일을 잘하는 사람, 누구는 이 회사에 오랜 기간 일을 하는 사람, 누구는 다른 사람과 잘 어울리는 사람, 누구..

2023. 4. 3. 00:41

자바 HashMap - 개발자가 정의한 class를 key로 만드는 방법

자바의 HashMap은 파이썬의 dict처럼, 고유한 key와 대응하는 value를 하나의 쌍으로 하여, 저장하는 자료구조 일반적으로 key를 문자열, 정수값으로 사용하지만, 필요에 따라 특정한 class를 key로 하고 싶을 수 있다 시험에 아래와 같은 Point라는 클래스를 key로 하고 싶었는데... class Point { int x,y; public Point(int x, int y) { this.x = x; this.y = y; } } 이걸 HashMap의 key로 사용해서 자료를 관리해볼려 했는데.. 원하는대로 동작을 안하더라고? 그립습니다 파이썬님 자연스럽게 두 객체 p1, p가 같다는 것은 x,y가 서로 같다는 것인데.. 문제는 key로 사용한 p1의 주소와 get을 하면서 넣은 p의 주..

자바 자료구조 우선순위 큐 심화응용 - 내가 원하는 우선순위에 맞는 우선순위 큐를 만드는 방법

1. 원하는 우선순위 기준에 맞는, 우선순위 큐 만들기 [(1, 7), (3, 2), (3, 1), (6, 2)] 와 같이 2차 평면상의 점들의 위치가 순서대로 주어졌을 때, 각각의 점의 위치가 주어질 때 마다 지금까지 주어진 점들 중 x, y의 곱이 가장 큰 경우를 출력하는 프로그램을 작성해보세요. 위와 같은 문제는 어떻게 해결할 수 있을까? 무작정 코드를 작성한다면 점의 위치가 주어질때마다, x*y를 계산하여 최대가 되는 경우를 골라야하므로, $O(N^{2})$이 된다. 하지만 PriorityQueue를 이용한다면 순간 최댓값을 찾는 과정이 O(logN)이 되어, 시간복잡도가 O(NlogN)이 된다. 그런데, 우선순위 큐를 어떻게 만들어야할까? 두 수의 곱이 최대가 되는 특별한 경우를 원하므로, 이..