분류 전체보기 (76) 썸네일형 리스트형 전기 공부 인풋이 전압과 저항이고 그 결과로 나오는게 전류라 볼 수 있다. 현실에서는 전압원을 사용하기 때문에 전압원이 일정한 전압(예를들어 5V)을 걸어주면 거기에 전기를 이용하는 저항을 연결해주면 그에맞는 전류가 흐른다. 그에 따라 전기 소모량(W = V x I)을 구할 수 있다. 사람이 왜 감전이 안되는지도 궁금했는데 테스터기로 찍어보면 대충 내몸은 10만옴 이상의 저항을 가진다. 그러면 1.5V건전지를 만지면 1.5/100,000의 전류가 흐르기때문에 0.000015A(0.015mA)전류가 흘러 인간이 느낄수 있는 0.001A (1mA)보다 작아서 못느낀다. 대충 30V아래는 못느낀다고 한다. 그래도 전류가 흐르는건 맞다 매우 조금 직류 전원을 쓰는 기기들은 저항이라고 해서 테스터기를 찍어봤는데 저항이 무한.. 파이썬으로 가벼운 메일 보내기 import smtplibfrom email.message import EmailMessagemsg = EmailMessage()msg.set_content("이것은 파이썬으로 보낸 간단한 메일입니다.")msg["Subject"] = "간단한 메일"msg["From"] = "your_email@gmail.com"msg["To"] = "receiver@example.com"# Gmail SMTP 서버 사용smtp_server = "smtp.gmail.com"smtp_port = 587# Gmail은 앱 비밀번호 사용해야 함!email = "your_email@gmail.com"password = "your_app_password"with smtplib.SMTP(smtp_server, smtp_port) a.. unity 클라이언트 아이디어 addressable은 resource를 업데이트 할 수 있다. xlua는 lua코드를 실행시킬 수 있는데 xlua랑 addressable을 이용하면 클라이언트만으로 어느정도 업데이트 시킬 수 있다. unity Sprite의 이름을 editor에서 코드로 변경하기 public void RenameSprites(string folder_name, string sprite_name) { string path = folder_name; // 원하는 폴더 string[] guids = AssetDatabase.FindAssets("t:Texture2D", new[] { path }); foreach (string guid in guids) { string assetPath = AssetDatabase.GUIDToAssetPath(guid); TextureImporter importer = AssetImporter.GetAtPath(assetPath) as TextureImporter; if (importer.. 부동소수점의 이해 및 정수 정확도 보장 범위 float, double을 이해해보자. 부동 소수점은 소주점의 위치가 고정되어 있지 않고 지수와 가수로 수를 표현하는 방식이다. float라는 이름은 부동소수점 (float point)을 줄인 이름이다. double은 정확도가 float보다 대충 두배가 높아서. 이제 핵심인 지수와 가수 개념을 알아본다. (아래는 double을 기준으로) double의 구조를 살펴보면 64비트로 되어있는데 | 부호(1) | 지수(11) | 가수(52) | 이렇게 되어있다. 의미를 보면 부호 비트(S): 1비트 → 0이면 양수, 1이면 음수지수(E): 11비트 → 지수(exponent)를 저장, bias = 1023가수(M): 52비트 → 소수점 이하의 유효 숫자 이를 바탕으로 값을 계산하는 방법은 값(실수) = (-1.. Unity camera rect변경 (screen size변경) 잔상 문제 해결 private void OnPreCull(){ GL.Clear(true, true, Color.black); } 이걸 추가하면 된다고 하는데 컬링 전에 호출되는 함수인데 애뮬레이터 실행에서는 잔상이 남았다. void OnRenderObject(){ if (changing == 1) { changing++; GL.Clear(true, true, Color.black); }else if (changing == 2) { changing++; mainCamera.rect = TargetRect; } else if(changing==0) { Rect rect = new Rect(); .. unity OnEnable이 Awake보다 빨리 불리는 현상. Awake가 더 빨리 불려야하는데 왜 OnEnable이 더 빨리 불릴까 이유는 같은 스크립트 내에서는 Awake가 더 빨리 불리나 A오브젝트의 Awake가 B오브젝트의 OnEnable보다 늦게 불릴 수 있다. Script_1.Awake()Script_1.OnEnable()Script_2.Awake()Script_2.OnEnable()Script_3.Awake()Script_3.OnEnable() 이런식으로 불리는 것이다. 그럼 어떤 스크립트를 먼저 할것인지 정하고 싶을 수 있는데 이는 Unity 에디터에서 Edit > Project Settings > Script Execution Order 메뉴를 통해 스크립트의 실행 순서를 지정할 수 있다. c++로 서버 만들어서 파일 보내기 #include #include #include #include #include #include #include #include int main() { // 1. 서버 소켓 생성 및 옵션 설정 int server_fd = socket(AF_INET, SOCK_STREAM, 0); if (server_fd == -1) { perror("소켓 생성 실패"); return -1; } int opt = 1; if (setsockopt(server_fd, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt)) 0) { perror("옵션 설정 실패"); return -1; } // 2. 서버 .. 이전 1 2 3 4 ··· 10 다음