6_Project 39

타일셋 제작 방법

1.타일셋 화질 깨지는 현상https://snow8village.tistory.com/135 에이스프라이트 파일이 깨져보일 때 해결방법(Resize)에이스프라이트로 열심히 만들고 저장했는데 너무 작고 또 확대해 보니 깨져 보일 때 해결하는 방법입니다. 1. 문제 상황 저장을 하고 파일을 열어보니 너무 작게 보이고, 확대해 보니까snow8village.tistory.com 2.타일셋 출력방법 https://www.youtube.com/shorts/sn9QBTZ8CU4 3.타일맵 스프라이트 슬라이스https://www.youtube.com/watch?v=dIQhKAChg2U

3.플레이어 캐릭터 설정하기

2D 게임 기준 1.GameObject 생성 2.오브젝트 내부에 Sprite Renderer 추가, 플레이어 이미지 넣기 (여기에 넣는 이미지는 Sprite만 가능, 타일은 안됨) (Sprite Renderer는 "2D 이미지를 화면에 그려주는 컴포넌트".) (따라서 Sprite Renderer는 Sprite 타입만 받지, Texture나 Tile Asset 자체는 직접 못 넣어.) 3.Rigidbody2D 추가 : 물리 연산(중력, 이동)적용 4.Collider2D(BoxCollider2D, CircleCollider2D등) : 충돌판정 5.PlayerController 스크립트 : 이동,점프,공격. 같은 동작 제어

2.유니티 컴포넌트 정리

[ 유니티 컴포넌트 정리 ] 유니티에서 컴포넌트는 게임 오브젝트(GameObhect)에 붙는 기능(속성+동작)단위이다. “GameObject는 껍데기, Component는 실제 기능” 이라고 보면 이해가 된다. 1. 기본 - Transform : 위치(Position), 회전(Rotation), 크기(Scale) - RectTransform : UI 오브젝트 전용 Transform (Anchors, Pivot, 레이아웃 지원) 2. 렌더링(Rendering) - Sprite Renderer : 2D 이미지 표시 - Mesh Renderer : 3D 모델 메시 표시 - Skinned Mesh Renderer : 본 애니메이션이 적용된 메시 (캐릭터) - Line Renderer : 직선/곡선 라인 표시 -..

1. 타일 맵을 까는 법

1.Hierarchy에 Tilemap 오브젝트를 추가한다. ( 우클릭-Create-2d-Tilemap )2.Assets 폴더에 TileMap 폴더를 추가한다.3.생성한 TileMap폴더에 Tile Palette을 추가한다( 우클릭-Create-2d-Tile Palette)4.RuleTile같은 특정한 기능이 있는 타일이 필요한 경우 Assets-TileMap에서 추가한다. (우클릭-Create-2d-Tile)팔레트는 말 그대로 그림을 그리는 화가가 물감을 짜놓는 곳이다. 타일을 올려두고 TileMap 오브젝트에 이것을 써넣을지 말지를 정하는 것이다. 따라서 사용할 타일이나 스프라이트를 팔레트에 드래그한다. *TileMap에서 타일 2개 이상 작업할때는 FocusOn 기능이 유용하다 1.Grid 및..

ZIGNER Main Code 250116

//패치 내용//250115 : MPU9250 기능 추가//250116 : 배터리 잔여용량 체크 기능, 서보제어 기능, 데이터 분리 기능 //서보동작이 정밀하지 못하니 수정 요망#include "Wire.h"#include "I2Cdev.h"#include "MPU9250.h"#include #include Servo ESC; // create servo object to control the ESCSoftwareSerial HC12(2, 3); // 아두이노 2번을 HC-12 TX Pin에 연결, 3번을 HC-12 RX Pin에 연결.MPU9250 accelgyro;I2Cdev I2C_M;Servo servo1;Servo servo2;Servo servo3;Servo camServo;//1..

6_Project/Zigner 2025.01.16

예제8) 데이터 분리 알고리즘2

void setup() { Serial.begin(9600); // 입력 문자열 String input = "P,180,2,2,2,100,EP,180,2,2,2,100,E"; // 첫 번째 P와 첫 번째 E 사이의 문자열 추출 int startIndex = input.indexOf('P'); int endIndex = input.indexOf('E', startIndex); if (startIndex != -1 && endIndex != -1) { String segment = input.substring(startIndex + 1, endIndex); // P와 E 사이 추출 String tokens[10]; int tokenIndex = 0; while (segmen..

6_Project/Zigner 2025.01.16

예제4) MPU9250 실습

*아래 MPU9250 라이브러리와 I2Cdev 라이브러리를 이용한다    *아래 코드는 함수 및 변수에 주석 넣은 것이다. #include "Wire.h"#include "I2Cdev.h"#include "MPU9250.h"// class default I2C address is 0x68// specific I2C addresses may be passed as a parameter here// AD0 low = 0x68 (default for InvenSense evaluation board)// AD0 high = 0x69MPU9250 accelgyro;I2Cdev I2C_M;//1. MPU9250 함수void getHeading(void); //N극에서 몇 도 회전해 있는가를 구함 void ..

6_Project/Zigner 2025.01.15