Code block Pro 자꾸 에러나서 짜증나네. 어쩔 수 없이 새로운 포스트로 넘어옴. Filter variants flavor dimension을 사용하면 모든 조합을 사용하므로 build variant가 매우 많아질 수 있는데, 필요없는 것까지 생성될 수 가 있다. 이경우, beforeVariants { } 블럭을 이용하면 된다. 예제를 보자. 위와 같이 작성하면, “minApi21″에 “demo”버전은 build variant를 생성하지 않게된다. Source set 만들기 기본적으로 안드로이드…
안드로이드 빌드 구성하기 #2
Manage remote repositories 새 안드로이드 스튜디오 프로젝트에서는 레포지토리 관련된 걸 settings.gradle에서 관리한다. 로컬 라이브러리나 파일이든, 리모트 레포지토리든, dependencyResolutionManagement{ } 에 넣어준다. 기본적으로 프로젝트를 생성하면 아래와 같이 구글 Maven 레포지토리와 Maven central 레포지토리를 포함하고 있다. 로컬 레포지토리를 사용하려면 다음과 같이 mavenLocal()을 사용한다. 또는 다음과 같이 특정 레포지토리를 직접 추가할 수 있다. 보다 자세한 내용은 gradle의 레포지토리…
안드로이드 빌드 구성하기 #1
JDK 안드로이드 스튜디오를 사용해 빌드하면, 자체적으로 설정된 JDK를 사용한다. sudio.jdk 디렉토리가 있음. 또는, JetBrains Runtime(JBR)이라고 JDK확장버전을 안드로이드 스튜디오랑 함께 배포하게 되는데, 이를 사용하고 이 방법이 권장된다. 커맨드 라인으로 빌드하게 되면, JAVA_HOME을 찾고 없으면 PATH에 있는 java를 실행하게 되는데, 이 경우 안드로이드 스튜디오와 JDK가 안맞게 된다. 같이 사용한다면, 두 버전을 맞춰줘야 함. 빌드 할 때 처음에는…
Android: Kapt to KSP
공식 문서 Migrate from kapt to KSP 에 잘 설명되어 있다. Kapt Kapt는 the Kotlin Annotation Processing Tool 의 약자로 Java Annotation을 코틀린에서 사용가능하도록 만들어준다. 결과적으로 Kotlin 코드에서 Annotation들의 사용이 가능해진다. 예를 들면, Room Database를 사용시 다음과 같은 Dao코드를 필요로 하는데, @Dao, @Query 등이 코드에 부가적으로 달려있는 annotation이며 Kapt는 이를 해석하고 필요한 코드를 생성하는 역할을…
Godot 4 : Ray casting
레이캐스팅(raycasting)이란? 말 그대로 쓰자면, 한 지점에서 광선을 쏴서 그 광선이 어딘가에 충돌하는지 알아내는 방법이다. 원래는 렌더링을 위한 기법으로 사용되었는데, 반사가 없는 레이 트레이싱으로 생각할 수도 있기 때문이다. 또한, 그림자를 계산하는데 사용될 수도 있다. 생각보다 활용도가 매우 높아서, 게임에서 마우스 클릭시 어떤 오브젝트가 선택되었는지 오브젝트 피킹에 사용되기도 하고, NPC의 시야에 플레이어가 보이는지 체크할 수 도 있다….