이전에 Blu-ray를 우분투에서 보기위해 makemkv라는 프로그램을 설치했던 적이 있습니다.

참고 : https://moordev.tistory.com/322

 

지금은 사실상 유일한 블루레이 리핑 프로그램이라고 해도 과언이 아닙니다. DVD시절에는 DVDFab, Handbrake 등 여러수단이 있었지만 Blu-ray는 이상한 DRM을 넣어놓아서 굉장히 어려워 졌습니다. (그마저도 재생을 방해하는 수준입니다.)

 

심지어 4k 시대에 들어오면서 DRM이 너무 심해져서 그냥 4k BD대신 넷플릭스를 권할 정도가 되었습니다. 그렇지만 넷플릭스에 비해 워낙 화질이 좋다보니 BD로 나오면 이쪽으로 보고 싶어지는데 그냥보지 말라는 수준으로 만들어 놓아서 사놓아도 쓸 수가 없습니다. 그나마 PS5나 엑스박스정도만이 편하게 감상이 가능합니다.

 

이쯤되면 그냥 리핑해서 영상을 USB나 SD카드에 담은 다음 BD는 책꽂이 구석에 박아두는게 더 유리할겁니다. 그러려면 어찌되었건 리핑을 해야합니다.

제가 갖고 있는 것은 HP노트북에 끼워주었던 CU10N이라는 BD DVD RW 드라이브 입니다. DVD나 CD는 구울 수 있지만 BD는 못 굽습니다.

 

그런데 모든 블루레이 드라이브가 리핑이 가능한 것이 아니라고 합니다. 심지어 기존 FHD 블루레이는 리핑이 되지만 4k는 되지 않는 경우도 있고 그냥 최신 DRM이 지원이 안되서 BD재생은 폼인 경우도 있습니다.

그래서 많은삽질이 필요한데 리핑 가능성을 보고 싶다면 MakeMKV에서 확인이 가능합니다.

 

오른쪽에 LibreDrive Information을 보면 알 수 있습니다.

다 필요없고 Status에서 Enable 되면 4k UHD도 리핑이 가능합니다.

Possible이라고 되어있으면 수정된 펌웨어를 입히는 것으로 사용이 가능합니다.

Hardware Support가 No라고 되어있으면 포기하세요.

 

대부분 BD Drive는 LG-Hitachi의 제품을 추천합니다. 저는 다행히 OEM제품인데도 불구하고 Enable로 되어있습니다. (아무래도 LG에서 제작한 것으로 보입니다.) 엥간하면 지원이 된다는 거지요. 특히 Drive Platform이 MT1959면 다 가능성이 있다고 합니다.

 

아마도 3월중에 4K BD가 하나 올 예정인데 그때 한번 이걸로 시도해봐야 할 듯 합니다.

,

https://github.com/kornelski/pngquant

 

GitHub - kornelski/pngquant: Lossy PNG compressor — pngquant command based on libimagequant library

Lossy PNG compressor — pngquant command based on libimagequant library - GitHub - kornelski/pngquant: Lossy PNG compressor — pngquant command based on libimagequant library

github.com

png 파일은 그림파일로 많이 쓰입니다.

사실 png는 비손실 압축이기 때문에 용량은 줄이면서 화질을 유지하고 싶은사람들에게 좋은포맷입니다.

무엇보다 워낙 오래쓰여왔기에 못 여는 프로그램이 없지요.

 

사실 png파일 하나만 써도 용량문제는 거의 해결되는데 이걸 또 한번 더 압축하는 방법이 있습니다.

 

기본 png는 24비트로 구성되어 있고 포토샵이나 김프에서 작업한 이후에도 24비트로 만들어진 png파일이 나옵니다.

이것을 투명도를 깨뜨리지 않고 256색 png형태로 바꾸거나 JPEG수준으로 압축을 하는 형태로 용량을 줄일 수 있습니다.

 

TinyPNG라는 사이트가 있는데 이게 pngquant를 사용하는 것입니다.

 

우분투에서는 다음 명령으로 설치가 가능합니다.

sudo apt install pngquant

 

데비안에도 그대로 있습니다.

 

사용방법은

pngquant <압축할려고 하는 파일>.png

이렇게 하면 -fs8이라는 것이 붙으면서 파일 크기가 줄어듭니다.

한번 이 스크린샷을 이용해봅시다.

이 파일의 용량은 648.4KiB 입니다.

이걸 pngquant로 한번 압축을 하면...

이겁니다만... 별 차이가 없죠? 하지만 용량은

209.8KiB로 확 줄어들었습니다.

 

이것만으로도 엄청나게 용량절약이 되는겁니다. 포토샵 플러그인등으로도 나와있으니 이를 이용하면 PNG파일의 용량을 더 줄일 수 있을겁니다.

 

엄청나죠?

,

보통 동전건전지는 LR44 혹은 CR2032를 주로 씁니다. 자동차 스마트열쇠나 소형 손전등에 사용되지요.

 

그런데 가끔 CR1632배터리를 쓰는 것이 있습니다. 유럽에서는 CR2032보다 CR1632를 쓰는거 같더군요. 유럽산 자동차나 가전제품은 CR1632를 요구하는 경우가 있습니다.

 

사진은 일렉트로룩스사의 청소기인데 컨트롤러 부분이 고장나서 뜯어보니

건전지 끼우는 부분에 CR1632배터리를 끼워야 하더군요. 혹시나 하고 집에 굴러다니던 CR2032배터리를 끼우려고 하니 안 들어갑니다. 당연하겠지만...

 

그래서 근처에 배터리를 사러 갔더니 CR1632는 없네요..

 

대신 다이소에서 CR1616은 팝니다.

전압은 동일하고 지름은 같습니다. 대신 두께가 반정도로 얇습니다.

CR2032는 CR1632와 두께는 동일하지만 지름이 다르지요.

 

여기서 눈치 채신분이 있을거 같은데 CR 뒤에 붙는 숫자는 지름 두자리 + 두께 두자리 입니다. 그래서 앞에 두자리가 같으면 지름이 같다는 겁니다.

 

그럼 모자란 두께는 어떻게 처리하냐면..

이렇게 쿠킹호일을 사용하시면 됩니다. 이걸 접고 접고 접어서 모자란 부분에 끼워넣으면 됩니다.

 

다만, 이것도 극성이 있으니 +극쪽(그니까 글씨 써있는 쪽)에 호일을 끼우시는걸 추천합니다. -극쪽에서 옆부분과 닿으면 쇼트 납니다.

 

음.... 고쳤네요!

,

Renpy의 버전이 7.x로 넘어간지 오래되었다. 하지만 여전히 Python특유의 성능은 발목을 잡기는 하지만 2D 게임 특성상 기기의 성능이 좋아지면 당연히 요구치가 낮아지니까 크게 문제 되지 않을 수도 있다. (하지만 일부 효과가 가득한 게임은 스마트폰에서 문제가 많이 일어난다. 심지어 무한루프에 빠지는 경험도 했다.)

그리고 일부 게임은 여전히 6.xx를 사용하고 있고 이 버전은 안드로이드 포팅이 상당히 힘들다.

우선 필요한 것.
OpenJDK-8
이전버전도 안 되고 이후 버전도 안 된다. 이것을 사용해야 한다. 왜냐하면 android-sdk-23을 사용하기 때문인데 이건 자그마치 안드로이드 6.0이 나오면서 나온 SDK다. 당시 Java는 8버전이 LTS로 지원되고 있었기에 해당 버전을 써야한다.

우분투에서는 openjdk-8-jdk 패키지로 설치가 가능하다. 필요하다면 oracle에서 받아서써도 되지만 굳이 그럴 필요는 없다. (라이센스 문제가 복잡해진다.)

그다음 Google관련 툴에서 에러가 엄청나게 나온다.

처음 안드로이드 빌드에 들어온 사람은 Install SDK & Create Keys에서 처음 보는 에러를 경험하게 된다.

원래는 렌파이에서 SDK설치가 원할했지만 구글에서 SDK들을 정리하다보니 조금 복잡해져버렸다.
그래서 Android Studio를 설치해서 SDK복사를 해와야 한다.

우선 Android Studio를 설치하고 SDK Manager를 실행한다.

More Actions를 누르면 SDKManager가 있다. 이것을 실행하자

SDK Platforms 탭에선 23버전 (Android 6.0)을 설치하고 그리고 제일 중요한 SDK Tools 탭에서 Google Play APK Expansion library 와 Google Play licensing Library 두가지를 체크한뒤에 Apply를 누르자.

그리고 SDK가 설치된 곳으로 가자
SDK Manager에서 위에보면 Android SDK Location이라고 있다. 이것을 보면 된다.

그다음 extras 폴더를 복사해서 Renpy가 설치된 곳/rapt/android-sdk-r23 에 복사한다.

저 extras 폴더 안에 구글 라이브러리들이 들어있어야 한다.

그리고 또 수정을 해야 한다.
복사된 extras 폴더 안에 google로 들어가면

market_licensing market_apk_expansion 이렇게 되어있다. 이것을

play_licensing play_apk_expansion 으로 바꿔준다.

이제 Renpy를 다시 켜면 활성화가 안 되어있던 Configure가 활성화 되어있다.
빌드까지 하고 나면 rapt/bin안에 설정한이름-release.apk가 짠하고 있을 것이다. 원래는 Build & Install 하면 디버깅설정된 휴대폰에 설치까지 되어야 하는데 가끔 안 되는 경우가 있다. 그때는 이 apk를 가지고 사이드로딩을 시도하면 될 것이다. 의외로 ADB관련 오류도 잦은 편이다. (특히 케이블이 불량인 경우)

왜 이딴 작업을 했냐고 물어보면... 의뢰가 들어와서 한창 삽질을 했다. 자바 버전으로인해 오류가 날때는 정말....

그리고 지속적인 구버전 오류가 날 때는 .android.json파일을 수정해서 target과 minsdk를 수정할 필요가 있다. 특히 이제는 사용되지 않는 4.0 아이스크림 샌드위치용 코드가 문제를 일으킬 수 있으니 애초에 지원 안 됨을 못 박는게 더 나을 수 있다.

하지만 제일 좋은건 호환성에 전혀 문제가 없다면 렌파이 버전도 함께 올리는 것. 그래야 최신 폰 대응이 쉬워진다.

추가로 안드로이드는 rpa포맷 지원이 안 되는듯. rpa를 풀어서 game폴더에 위치해야 정상 구동이 가능하다. 이것 때문에 이틀동안 밤샘한거 생각하면 어휴...

,

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

요즘은 하도 버추얼 유튜버라는게 많아서 버추얼 유튜버가 되기위한 도구들이 많이 개발되었는데 (주로 일본에서) 이 버추얼 유튜버라는게 워낙 준비비용이 많이 들다보니 어떻게든 저렴하게 만들고자 많은 것들이 개발되었습니다.

 

그중 하나가 바로 웹캠으로 모션을 인식하는 것.

 

보통은 모션캡처 장비를 이용하거나 더 저렴하게 이용하고자 키넥트 여러개와 조합하거나 아니면 가속도센서를 부착한 팔과 머리만을 IK로 구현하거나 하는 방식이 주를 이루었는데 구글에서 Mediapipe라는 것을 공개하면서 2D 이미지만으로 사람의 모션을 그대로 인식하는 것이 만들어지게 되었습니다.

 

그런데... 본래 Mediapipe는 사람의 모션, 손의 제스처, 얼굴표정이 따로따로인데

https://github.com/yeemachine/kalidokit

 

GitHub - yeemachine/kalidokit: Blendshape and kinematics solver for Mediapipe/Tensorflow.js face, eyes, pose, and hand tracking

Blendshape and kinematics solver for Mediapipe/Tensorflow.js face, eyes, pose, and hand tracking models. - GitHub - yeemachine/kalidokit: Blendshape and kinematics solver for Mediapipe/Tensorflow.j...

github.com

이 툴킷은 그걸 한번에 모두 쓸수 있게 만든 툴킷입니다.

그것도 자바스크립트로 만들어서 그냥 웹브라우저에서 돌아갑니다.

 

자세히 보면 Mediapipe뿐만 아니라 tfjs도 사용합니다. 얼굴 표정은 Blendshape형태로 쓸수있게 - 눈을 감았다 떴다 여부와 입모양 아에이오우 정도)로 간략하게 인식하고 손가락은 따로 인식해서 각 손가락의 관절이 돌아간 각도를 리턴합니다.

 

일단 장점이라면 사용하기 편하다는것이랑 JS형태이므로 웹브라우저로 그냥 처리가 가능하다는점.

그리고 웹브라우저를 쓰는게 마음에 안 들면 JSON형태이니 그걸 그대로 뿌려버리면 된다는 것.

 

대충 예제코드를 살펴보면

import * as Kalidokit from 'kalidokit'
import '@mediapipe/holistic/holistic';
import '@mediapipe/camera_utils/camera_utils';

let holistic = new Holistic({locateFile: (file) => {
    return `https://cdn.jsdelivr.net/npm/@mediapipe/holistic@0.4.1633559476/${file}`;
}});

holistic.onResults(results=>{
    // do something with prediction results
    // landmark names may change depending on TFJS/Mediapipe model version
    let facelm = results.faceLandmarks;
    let poselm = results.poseLandmarks;
    let poselm3D = results.ea;
    let rightHandlm = results.rightHandLandmarks;
    let leftHandlm = results.leftHandLandmarks;

    let faceRig = Kalidokit.Face.solve(facelm,{runtime:'mediapipe',video:HTMLVideoElement})
    let poseRig = Kalidokit.Pose.solve(poselm3d,poselm,{runtime:'mediapipe',video:HTMLVideoElement})
    let rightHandRig = Kalidokit.Hand.solve(rightHandlm,"Right")
    let leftHandRig = Kalidokit.Hand.solve(leftHandlm,"Left")

    };
});

// use Mediapipe's webcam utils to send video to holistic every frame
const camera = new Camera(HTMLVideoElement, {
  onFrame: async () => {
    await holistic.send({image: HTMLVideoElement});
  },
  width: 640,
  height: 480
});
camera.start();

여기서 faceRig ,poseRig, rightHandRig, leftHandRig는 각각 JSON형태로 되어있는 객체이며

{
    eye: {l: 1,r: 1},
    mouth: {
        x: 0,
        y: 0,
        shape: {A:0, E:0, I:0, O:0, U:0}
    },
    head: {
        x: 0,
        y: 0,
        z: 0,
        width: 0.3,
        height: 0.6,
        position: {x: 0.5, y: 0.5, z: 0}
    },
    brow: 0,
    pupil: {x: 0, y: 0}
}
{
    RightUpperArm: {x: 0, y: 0, z: -1.25},
    LeftUpperArm: {x: 0, y: 0, z: 1.25},
    RightLowerArm: {x: 0, y: 0, z: 0},
    LeftLowerArm: {x: 0, y: 0, z: 0},
    LeftUpperLeg: {x: 0, y: 0, z: 0},
    RightUpperLeg: {x: 0, y: 0, z: 0},
    RightLowerLeg: {x: 0, y: 0, z: 0},
    LeftLowerLeg: {x: 0, y: 0, z: 0},
    LeftHand: {x: 0, y: 0, z: 0},
    RightHand: {x: 0, y: 0, z: 0},
    Spine: {x: 0, y: 0, z: 0},
    Hips: {
        worldPosition: {x: 0, y: 0, z: 0},
        position: {x: 0, y: 0, z: 0},
        rotation: {x: 0, y: 0, z: 0},
    }
}
{
    RightWrist: {x: -0.13, y: -0.07, z: -1.04},
    RightRingProximal: {x: 0, y: 0, z: -0.13},
    RightRingIntermediate: {x: 0, y: 0, z: -0.4},
    RightRingDistal: {x: 0, y: 0, z: -0.04},
    RightIndexProximal: {x: 0, y: 0, z: -0.24},
    RightIndexIntermediate: {x: 0, y: 0, z: -0.25},
    RightIndexDistal: {x: 0, y: 0, z: -0.06},
    RightMiddleProximal: {x: 0, y: 0, z: -0.09},
    RightMiddleIntermediate: {x: 0, y: 0, z: -0.44},
    RightMiddleDistal: {x: 0, y: 0, z: -0.06},
    RightThumbProximal: {x: -0.23, y: -0.33, z: -0.12},
    RightThumbIntermediate: {x: -0.2, y: -0.19, z: -0.01},
    RightThumbDistal: {x: -0.2, y: 0.002, z: 0.15},
    RightLittleProximal: {x: 0, y: 0, z: -0.09},
    RightLittleIntermediate: {x: 0, y: 0, z: -0.22},
    RightLittleDistal: {x: 0, y: 0, z: -0.1}
}

이런 구조이니 다른 프로그램에서 JSON을 파싱해서 쓰면 되는 것이지요. 자바스크립트로 만들면 JSON파싱하고 자시고도 필요없지만 특정 프로그램을 위해 Unity에서 사용한다거나 다른 프로그램에서 쓰겠다면 JSON파싱을 해주면 읽어낼수 있습니다. 저기있는 x,y,z가 LocalEulerRotation의 RADIAN이라는 것만 안 잊어버려도 충분히 쓸 수 있습니다.

 

Unity에선 그냥 Quarterninon으로 써주는게 가장 최적의 시나리오지만 일단 느리긴 하지만 Euler각도도 쓸 수는 있으니 이런 방식도 나쁘지는 않은 듯 합니다. Unity가 아닌 godot엔진을 쓴다고 해도 Python은 Json파서가 기본적으로 갖추어져 있으니 더더욱 편리하게 쓸 수 있을 겁니다. 혹은 blender도 쓸 수 있고요.

,

https://github.com/MoorDev/shin-yomawari-pc-kr-translation-project/releases/

 

Release 신 요마와리 -심연을 떠도는밤 한글패치 선행공개판 · MoorDev/shin-yomawari-pc-kr-translation-project

게임이 설치된곳/gamedata 여기에 압축을 풀어주세요. 이미지 번역은 아직 되어 있지 않으며 번역도 아직 완벽 하지 않습니다. 조금씩 번역을 개선중이니 미리 이런식으로 만드는구나라고 알면 됩

github.com

여기에서 Yomawari_Midnight_Shadow_Korean.tar.gz 파일을 다운로드 받아 게임이 설치된곳/gamedata에 붙여 넣어주시면 됩니다.

사실이쯤 되면 다들 알아서 잘 하겠지만 스팀에서 속성을 누르고 로컬파일로 들어가서 붙여넣으라는 말은 오역이나 잘못된 것을 알기 위한 선행판이니까 생략

요마와리:심연의 중국어화툴(https://github.com/wmltogether/yomawari-pc-translation)을 기반으로 하고 있습니다. 여기서 신요마와리에 맞게 소스를 수정하고 폰트를 새로 만들어서 (기존 요마와리:심연용 한글패치는 모든 한글이 들어있지 않음)넣었습니다.

우선 이미지쪽은 전혀 건들지 않아서 이미지가 영문으로 나오게 되며 요마와리1때와 같이 UI들도 영문으로 나오게 됩니다. 이쪽은 요마와리:심연의 한글패치에서도 그랬지만 건들 생각이 없습니다.

왜 tar.gz포맷이냐라고 한다면... 그냥 제가 리눅스사용자라 그렇다고 보면 되겠습니다. 어차피 반디집이나 알집같은 일반적인 압축 프로그램이라면 다 풀수 있으니까요.

그리고 폰트는 요마와리1에서 쓰인 폰트가 마음에 안 들고 신요마와리에선 폰트가 살짝 길쭉한 형태로 렌더링되고 있어서 가독성좋은 폰트를 찾다가 대화는 쿠키런폰트로 튜토리얼은 나눔바른고딕으로 바꿨습니다.

요마와리1에 쓰인 폰트가 분위기는 더 좋았지만 제 눈에 바로 들어오지 않아서 적당히 잘보이고 적당히 귀여운걸로 선택했습니다.

이번것은 선행-0.1이니 개선되다보면 또 바뀔수도 있습니다.

 

=====선행-0.3========

이미지 파일의 위치를 못 찾고 있습니다. ymwr파일 안에 있는 것은 거의 확실한데 이걸 못 풀고 있습니다.

lzs파일도 못 풀고 있기에 도저히...

 

일단 눈에 보이는 TGA파일만 우선 수정했습니다. 미니맵이 전부네요.

결국 Me는 영어로 나머지 맵은 한국어로 써지는 상황이군요. UI는 또 어디를 손을 대야 할까요?

 

음...그냥 스토리만 넘길까...? 그러기엔 일기부분이 또 걸리네요. 일기는 그냥 영어로 나오는데...

 

================이미지번역도 가능

트위터의 도선생이라는 분께서

https://twitter.com/_Ar1n4u?t=obMetfHJRlfwX91K4dT0fQ&s=09
도움을 주셔서 이미지 번역을 일부 했습니다.

더 할 수 있긴한데... 급 귀차니즘이 이걸...


====여기까진 선행공개판 한글패치에 대한 이야기 ====



이전에 이런 글을 올렸는데...
https://moordev.tistory.com/354

 

 

 

도선생(@_Ar1n4u) 님 | 트위터

@_Ar1n4u 님 언뮤트하기 @_Ar1n4u 님 뮤트하기 팔로우 @_Ar1n4u 님 팔로우하기 팔로잉 @_Ar1n4u 님 팔로우 중 언팔로우 @_Ar1n4u 님 언팔로우하기 차단됨 @_Ar1n4u 님이 차단됨 차단 해제 @_Ar1n4u님 차단 해제 대

twitter.com

 

신요마와리 : 떠도는 밤 심연 한글패치 는 가능할까?

위를 보면 알겠지만 충분히 가능하다. 넵튠 리버스1 때도 그랬고 이번에 요마와리 삽질하면서 느낀게 삽질도 하다보면 는다는 것. 이야기를 하자면 좀 길다.. 이게 어떻게 가능했냐면. 요마와리

moordev.tistory.com

이전에 이런글을 올렸었는데 이때는 생각보다 제가 3일동안 고생하다가 어이없게도 4바이트가 더 있다는 황당한 사실때문에 글을 올렸습니다.

나름 헥스에디터 자주 썼다고 생각했는데 아직 이런 헥스노가다는 익숙치 않았나 봅니다. 이젠 번역도 무사히 집어넣었고 코드에 따른 문제는 설마 없겠지요.

,

 

위를 보면 알겠지만 충분히 가능하다.

넵튠 리버스1 때도 그랬고 이번에 요마와리 삽질하면서 느낀게 삽질도 하다보면 는다는 것.

 

이야기를 하자면 좀 길다..

이게 어떻게 가능했냐면. 요마와리 1의 한글패치의 경우 중국어화 패치를 이용했다고 써있었다.

https://github.com/wmltogether/yomawari-pc-translation/tree/master/pc-tools

 

GitHub - wmltogether/yomawari-pc-translation: yomawari-pc-translation-project

yomawari-pc-translation-project. Contribute to wmltogether/yomawari-pc-translation development by creating an account on GitHub.

github.com

해당 소스는 여긴데 당연히 이걸로는 신 요마와리의 데이터를 휘적휘적하는 것은 불가능했다.

하지만... 헥스노가다와 기타 삽질을 통해서..

 

공식중 일부가 다른 것을 확인해서 수정

매직넘버라고 생각한것은 그냥 기존 dat위에 오프셋 값을 덮기만 하면 되므로 무시

 

pc_tools에서 text_export.py를 분석하니 오프셋값이 3바이트에 하나씩 쓰여서 0x4+0xC *i +0x4형태로 오프셋을 만드는 것이 확인 되었다.

하지만 이건 요마와리1의 경우고 신 요마와리는 오프셋값이 4바이트에 하나씩 쓰여있는 것이 확인 0x4+0x10*i+0x4로 고쳐주니 텍스트 뽑기가 무사히 된다. 단, 구조가 약간 다르므로 마지막줄에 0x00을 하나 더 삭제하면 된다. 그래도 역시 파이썬이 소스 읽기는 참 편하다.

 

ymwr2_korean_text.7z
0.00MB

이게 요마와리2에 맞게 수정한 파이썬 스크립트 단점이라면 파이썬2.7이라 새로 파이썬을 또 깔아야 한다는 점? (파이썬3는 기본적으로 깔려있지만 파이썬2는 지원이 끝난지 오래라 따로 깔아야 한다.)

 

그리고 폰트의 경우는 pc-tools폴더에서 font.csv파일을 열어서 내가 원하는 TTF 파일로 수정하고(개인적으로 나눔시리즈들이 참 좋은듯) csv_list.txt에 KS X 1001 문자 전체를 다 때려박아서 한글을 지원하면서 몇가지 특수문자도 지원하게 한다.

그리고 NISFontBuilder.exe 돌려버리면 import 폴더에 짠하고 폰트파일이 들어가니 이걸 이용하면 쉽다.

 

이제 남은건 번역과 이미지 수정뿐.

우선 이미지 수정은 귀찮기도 하거니와 딱히 필요하지 않으면 영문판 이미지 그냥 사용할 생각이다. fad 파일 뜯으면 된다고 하는데 귀찮은건 귀찮은거다. 이미 플레이스테이션이랑 스위치로 한글판 다 했을테니 그냥 내 흥미 본연의 이유로 하는 것.

 

 

현재는 구글번역기 돌려서 그걸 때려박았는데 좀 웃긴 결과가 나오는 중. 역시 번역은 손번역이 최고다.

 

https://github.com/MoorDev/shin-yomawari-pc-kr-translation-project

 

GitHub - MoorDev/shin-yomawari-pc-kr-translation-project: shin yomawari-pc-kr-translation-project

shin yomawari-pc-kr-translation-project. Contribute to MoorDev/shin-yomawari-pc-kr-translation-project development by creating an account on GitHub.

github.com

현재까지 작업물은 여기에 다 때려박았다.

 

가져가서 쓰실분은 쓰시고 바이트 단위로 삽질하는거 구경하고 싶으면 직접 해보시길

,

libblas.so.3: cannot enable executable stack as shared object requires: Permission denied

 

ARM용 우분투 사용중에 numpy를 쓰려고 하니 atlas, openblas에서 이런 오류가 나온다.

이건 execstack이 등록이 안 되서 그런 것이므로 등록해주면 된다. ARM용 우분투는 임베디드에 가까워서 이런 자잘한 것이 삭제되어 있기 때문.

 

sudo apt install execstack

execstack -c /usr/lib/arm-linux-gnueabihf/libblas.so.3 

이런 식으로 오류가 난 라이브러리를 스택에 등록하면 된다. 저기 있는 arm-linux 대신 aarch64-linux 일수도 있다. 이건 본인이 가지고 있는 보드에 따라 다르다.

,

예전에 무선모니터라는게 잠깐 나온적이 있습니다.

말그대로 선없는 모니터란건데요. 요즘은 굳이 필요성을 못 느껴서 쓰는 사람을 못 봤습니다.

그런데 https://www.spacedesk.net/ 이물건 접하고 WindowsPC에 무선 모니터를 붙였습니다...

물론 반응속도는 게임까지는 어려운 수준이지만 Android화면에 Windows화면이 뜨니 이건..거의 신세계입니다. AutoCAD작업은 무리없네요.

사실 제 PC는 모니터없이 산지 꽤 됐습니다. 대신 HDMI to AV를 하나 달아서 가짜 모니터를 하나 달고 VNC로 연결해서 썼습니다. 밖에서는 리눅스PC를 들고다니고 Windows환경이 필요하면 VNC로 연결을 했습니다.

근데 집에서도 VNC로 연결하니 답답합니다. Parsec이라던가 Steam Link같은 부드러운 물건도 있지만 저희집 네트워크가 그리 좋은 편은 아니라서 조금 애매하네요.

그러다 Spacedesk로 모니터 대용으로 쓸만하다는 것을 알게되었는데... 진짜 쓸만합니다!

WindowsPC에

서버는 Windows10과 Windows8.1을 지원한다. 아마 Windows11도 지원이 될것이다.

서버프로그램을 설치합니다. Windows10과 Windows8.1을 지원합니다. Windows11도 아마 지원 할수 있을겁니다. 저는 Windows10 RS3 LTSC를 쓰고 있는데 최신빌드도 문제없을겁니다.

Nvidia그래픽 사용자는 461.09 이상을 설치하라고 하는군요. 드라이버 충돌위험이 있다고 합니다. 저는 AMD라 그런 문제는 없군요.

그리고 안드로이드 태블릿이나 윈도우 태블릿에서 Spacedesk앱을 설치합니다. Playstore에서 검색하니 바로 뜨는군요. 아니면 APKpure같은 사이트에서 받아서 사이드로딩 될것 같습니다.

Playstore에 안드로이드 앱이 있다 이걸 쓰도록하자


그리고 실행하면 멀티모니터로 잡힙니다. 저는 VNC로 작업하기에 Spacedesk와 VNC에 동일한 화면이 뜨도록 복제모드(Windows+P 버튼을 눌러서 복제모드가 될때까지 계속 누르기)로 바꿨습니다.

그러니까 태블릿의 터치를 Windows가 받아줍니다! 기존 구형 태블릿PC가 Windows태블릿으로 변하는 순간이었습니다.

심지어 반응속도도 나쁘지 않습니다. 굉장히 만족스러워지네요. WindowsPC가 게임용에 준하는 녀석이라 게임도 해봤는데 약간 반응이 느릴뿐이군요.

엄청난 녀석인 것 같네요. 다만 리눅스는 왜 지원이 안 될까요...?

,