반업주부의 일상 배움사
완전 자동 블렌더 스크립트를 생성하는 Chat GPT를 사용했습니다! :: ChatGPT 정리 본문
[ 요약 ]
자주 사용하는 두 가지 소프트웨어인 ChatGPT와 Blender를 통합하는 방법에 대해 설명합니다.
Blender 아티스트가 일반적으로 사용하지 않는 Blender의 스크립팅 탭에 중점을 둡니다.
스크립팅 탭을 사용하면 워크플로를 자동화하거나 씬 또는 모델에서 미세 조정 옵션을 제공하는 데 사용할 수 있는 커스텀 Python 스크립트를 가져오거나 작성할 수 있습니다.
이 문서에서는 유효한 스크립트를 제공하는 검증된 프롬프트의 예시를 제공하며 작성자는 그 자리에서 몇 가지 아이디어를 즉석에서 구현했습니다.
원하는 출력은 간단한 구체 고리이며, 저자는 프롬프트를 사용하여 짧은 스크립트를 실행합니다.
여러분이 스크립팅 탭을 사용하여 Blender에서 사용자 지정 스크립트를 실험해 보도록 합니다.
I had Chat GPT Create Fully Automatic Blender Scripts!
https://www.youtube.com/watch?v=HobnMo7AZbM
[ 한글 전체 ]
안녕하세요, 또 다른 튜토리얼에 오신 것을 환영합니다!
이번 튜토리얼에서는 제가 가장 좋아하는 두 가지 소프트웨어, 즉 ChatGPT와 Blender를 통합해 보려고 합니다.
ChatGPT는 분명히 더 현대적인 소프트웨어입니다.
용량이 초과되었다는 메시지를 몇 번 받았기 때문에 이 기능이 계속 유지될지는 보장할 수 없습니다.
로그인되어 있다고 가정하면 세션이 계속 이어져야 하지만 두고 봐야죠.
다시 작업할 때 끊길 수도 있습니다.
사실 이 채널에서 배경 영상을 제외하고는 블렌더로 작업한 적이 없는 것 같지만, 몇 년 전부터 사용해 왔습니다.
블렌더로 창의적인 프로젝트를 많이 해봤어요.
틀림없이 제가 가장 좋아하는 소프트웨어는 Stable Diffusion이 아니라면 작업하기에 가장 좋은 소프트웨어입니다.
저는 그것과 Blender 사이를 오가는 편입니다.
크리에이티브 도구로서 Blender는 솔직히 미쳤어요.
사용할 수 있는 진행 상황, 업데이트 및 플러그인의 양은 놀라울 정도입니다.
기능의 양은 정말 놀라울 정도입니다.
한 가지 더...
오늘은 챗봇과의 통합에서 집중적으로 다룰, 더 정확하게는 스크립팅 탭입니다.
이 부분은 제가 한 번도 다루어본 적이 없는 부분입니다.
실제로 일반 Blender 아티스트에게 물어보면 대다수가 스크립팅 탭을 사용해 본 적이 없다고 말할 것입니다.
Blender에서 잘 알려지지 않은 탭이 아니라 대부분의 사람들이 사용하지 않는 탭일 뿐입니다.
물론 스크립팅은 커스텀 파이썬 스크립트를 가져오거나 작성할 수 있는 탭입니다.
스크립트는 워크플로우를 자동화하거나 씬 또는 모델에서 더 세밀한 조정 옵션을 제공하는 데 사용할 수 있습니다.
스크립팅의 실제 사용 사례가 무엇인지는 잘 모르겠지만, 자동화에 유용하거나 자율적으로 작동해야 하는 수많은 움직이는 부품이 있는 복잡한 씬을 처리할 때 유용할 수 있다고 생각합니다.
하지만 지금은 뷰포트의 크기를 조정하여 3D 환경을 더 잘 볼 수 있도록 하고 작업을 계속하겠습니다.
자, 이제 유효한 스크립트를 제공하는 검증된 프롬프트의 몇 가지 예를 보여드리겠습니다.
나머지 시간에는 즉흥적으로 즉석에서 몇 가지 아이디어를 생각해 내겠습니다.
이것은 이전에 데모로 본 적이 있는 간단한 스크립트입니다.
생성할 스크립트는 다음 프롬프트를 기반으로 합니다: "텍스트를 대문자로 쓰고 블렌더 스크립트를 작성하는 스크립트를 작성하세요." 최근에 손가락에 문제가 생겨서 타이핑에 실수가 있는 점에 대해 사과드립니다.
블렌더 스크립트는 원점을 중심으로 20개의 구를 고리 모양으로 생성합니다.
구체는 반경 1미터에 위치하며 동일한 간격을 유지해야 합니다.
구의 크기는 상대적으로 작아야 합니다.
원하는 출력은 단순한 구의 고리입니다.
보내자마자 왼쪽에 스크립트가 저장되지 않는 것을 볼 수 있는데, 안타깝습니다.
여기서 무슨 일이 일어나고 있는지 봅시다.
우리는 bpy를 가져오고 있으며 이것은 매우 짧은 스크립트입니다.
몇 주 전에 똑같은 프롬프트를 실행했는데 훨씬 더 긴 스크립트를 얻었습니다.
제가 잊고 있던 "코드 복사" 기능이 있습니다.
스크립팅 탭으로 이동하여 "새로 만들기"를 클릭한 다음 코드를 복사하여 붙여넣기만 하면 alt p를 사용하여 스크립트를 실행할 수 있습니다.
그러나 이번에는 실제로 작동하지 않았습니다.
두 개의 구체가 서로 겹쳐진 것 같습니다.
20개의 구가 있는데 중앙에 있지 않습니다.
이것은 분명히 다른 결과입니다.
구가 고리 모양으로 간격을 두도록 스크립트를 업데이트할 수 있나요?
여기서 반경을 너무 구체적으로 지정하고 싶지 않습니다.
반경을 1미터로 지정했지만 이상하게 보입니다.
왜 '높은 범위'에 대한 각도를 정의하고 2파이를 28로 나눈 값으로 설정한 것일까요?
"좋아, 잠깐만.
작동할지도 모르겠네요.
이렇게 해봅시다.
이제 여기로 가서 스크립트를 지우겠습니다.
이 모든 개체를 지우고 다시 붙여넣으세요.
이게 뭐지?
실행하려면 P 키를 누릅니다.
멋지네요!
네, 네, 초기 프롬프트에 좀 더 자세하게 설명했어야 했는데요.
하지만 네, 이게 몇 주 전에 제가 얻은 것입니다.
보시다시피, 이 구체들이 있습니다.
이것은 빙구가 아닌 자외선 구체처럼 보입니다.
매우 흥미로운 과정입니다..."
모델 또는 스크립트에 따라 빙권, 얼음 또는 UV 구를 사용할지 여부가 결정됩니다.
블렌더에서 이 결과를 얻는 방법에는 여러 가지가 있습니다.
스크립트를 자세히 살펴보면 2에 파이 함수를 곱하고 20으로 나눈 값을 사용하여 동일한 간격을 정의하고 있음을 알 수 있습니다.
하지만 저는 파이썬에 대한 전문가가 아니며 파이썬으로 광범위하게 코딩해 본 적이 없다는 점을 인정해야 합니다.
그럼에도 불구하고 이 스크립트의 줄 사이를 읽을 수 있습니다.
문맥을 명확히 하고 작업할 수 있는 완전한 문장을 제공해 주세요.
감사합니다.
"흥미로운 사용 사례입니다!
Google에서 제공하는 모델(이름은 기억나지 않음), Nerf 모델, Dream Fusion 등 몇 가지 텍스트-3D 모델을 언급하셨습니다.
하지만 이러한 모델은 학습 데이터가 충분하지 않아 한계가 있습니다.
수천, 수백만 개의 3D 모델을 사용할 수 있지만 여전히 충분한 학습 데이터를 제공하기에는 충분하지 않습니다."
"데이터 트레이닝 세트에 문제가 있어서 명확한 모델이 없다는 것을 알고 있습니다.
하지만 이전 예제에서와 같이 블렌더 스크립트를 작성하는 텍스트를 사용하여 3D를 생성하는 다른 방법이 있습니다.
원시적인 도형을 사용하여 간단하게 개를 만들 수 있습니다.
하지만 이 프롬프트를 사용할 때마다 다른 결과를 얻을 수 있습니다.
몸통, 머리, 귀에 특정 제목이 할당되어 있습니다.
먼저 귀를 만들어 보겠습니다."
귀를 개별적으로 만드는 것은 항상 재미있습니다.
모델이 개가 어떻게 생겼는지 상상한 다음 기본 특징에 따라 세분화하는 것을 보는 것은 흥미롭습니다.
분명히 귀는 개의 매우 눈에 띄는 특징입니다.
사실 귀는 세 번째와 네 번째 특징에 불과합니다.
그 다음에는 첫째 다리와 둘째 다리가 있습니다.
다리가 두 개 더 있어야 해요.
두고 봐야죠.
이 스크립트는 조금 더 오래 실행되는 경향이 있습니다.
물론 개 전체를 요청하는 경우라면 원시적인 모양을 10개 정도 만들어야 합니다.
개의 가장 기본적인 모양을 얻으려면...
좋아요, 꼬리가 들어갔어요.
바로 그거예요.
이 코드를 복사한다고 해서 너무 기대하지 마세요. 멋지게 보이지는 않을 테니까요.
하지만 Alt+P를 누르면 실행되지 않습니다.
흠, 여기 있네요.
좋아요, 흥미롭네요.
그거 알아요?
지금까지 제가 본 것 중 가장 좋은 결과입니다.
정말 놀랍습니다.
물론 비율이 최고는 아닙니다.
하지만 물체의 위치 측면에서 보면 머리가 보입니다.
옆모습으로 가보겠습니다.
완벽합니다.
네, 배경 그리드에서 볼 수 있듯이 여기의 단위가 정확히 맞습니다.
이 큐브가 배경 그리드에 따라 정확한 크기로 설정된 것을 볼 수 있기를 바랍니다.
위치 측면에서 연결부가 매우 평평합니다.
귀는 머리의 상단 모서리에서 만나는 것처럼 보이며 상단 표면은 완벽하게 중앙에 있는 것처럼 보입니다.
다리조차도 앞쪽에서 분리되어있어 흥미 롭습니다.
꼬리는 중앙에 정사각형이 있고 모든 것이 본질적으로 칸막이인데 놀랍습니다.
전에는 구와 같은 다른 모양을 사용했었거든요.
또는 머리에 직사각형 모양을 사용한 것도 흥미로운 선택입니다.
여기에서는 복셀화된 버전이 더 많지만 솔직히 모델에 찬사를 보냅니다.
지금까지 제가 얻은 결과물 중 최고입니다.
AI로 생성된 것인지, 그냥 임의의 복셀 아트인지 모른 채 이걸 본다면 누가 알겠습니까?
아마 언젠가는 "그래, 저건 개야"라고 말하거나 두 번째로 추측했을 것입니다.
첫 번째 추측은 확실하지 않지만 나쁘지 않고 전혀 나쁘지 않습니다.
지금까지 제가 사용한 문제들 중 일부입니다.
이제 새로운 문제를 몇 가지 생각해 봅시다.
모델에 대해 조금 더 어려운 문제를 생각해 보겠습니다.
모델을 더 복잡한 장면으로 계속 밀어붙이면 이런 일이 매번 발생합니다.
결국 모델이 깨지고 몇 가지 오류가 발생합니다.
Chachi BT의 좋은 점은 말하기만 하면 오류를 해결할 수 있다는 점입니다.
"이 오류가 발생했어요"라고 말하고 오류 코드를 복사하여 모델에 다시 입력하면 대부분의 경우 약 80%의 경우 첫 번째 시도에서 해당 오류를 성공적으로 해결할 수 있습니다.
그렇지 않으면 계속 검색해야 합니다.
점점 더 많은 프롬프트를 반복하게 될 수도 있으며 때로는 오류가 해결되지 않을 수도 있습니다.
이 시점에서는 알고 있는 모델(ChatGPT)이 이런 종류의 작업에 최적화되어 있지 않으므로 포기하는 것이 좋습니다.
코드 완성 및 코드 생성에는 최적화되어 있지만 이 분야에는 그다지 최적화되어 있지 않습니다.
일관성 있는 Blender 스크립트를 만들 수 있다는 사실 자체가 솔직히 매력적이고 인상적입니다.
이제 좀 더 복잡한 모양으로 넘어가 보겠습니다.
지금까지는...
중첩과 서로 다른 위치에 있는 원시 개체만 사용했습니다.
하지만 블렌더에서 몇 가지 도구를 더 사용하면 어떨까요?
예를 들어 돌출이나 부울을 사용해 볼까요?
중앙에 원통형 당김이 있는 큐브를 만들어 봅시다.
물론 Blender에서 수동으로 이 작업을 수행하는 가장 빠른 방법은 큐브와 원통을 별도로 만든 다음 큐브를 선택하고 원통을 구동 개체로 부울 수정자를 적용하는 것입니다.
그렇게 간단합니다.
그런 다음 필요한 추가 수정을 적용할 수 있습니다.
문법을 수정하기 위해 수정된 텍스트는 다음과 같습니다."수정자를 추가하여 원통형 구멍을 만듭니다.
이 과정은 여러 단계로 진행됩니다.
먼저 정육면체를 만들고 원점에 위치하는지 확인합니다.
그런 다음 역시 원점에 위치하는 완벽한 원통을 만듭니다.
부울 차이를 사용하여 수정자를 빼서 스마트폰과 성공적으로 달라지도록 합니다.
이 인상적인 작업에 정말 놀랐습니다.
99%는 성공할 것이라고 확신하지만 결과는 두고 봐야죠."
"성공할 거라고 확신합니다.
알았어요, 알았어요.
숨기는 문제만 해결하면 돼요.
아니요, 거기에 오류가 있습니다.
음, 알았어요.
아직은 아니네요
기대가 컸어요.
여기까지만 해냈어요.
마지막 두 줄을 읽지 않았어요.
그래서 그런가봐요
이게 맞는 것 같습니다.
부울을 초기화하고 있었습니다.
원통이 데이터로 적용된 차이 수정자가 적용되었습니다.
이 줄이 무엇을 하는지 잘 모르겠습니다.
이 프로세스를 수동으로 완료할 수 있나요?
수정자로 이동하면 수정자에 아무것도 없다는 것을 알 수 있죠?"
이제 부울로 이동하여 "Whoops"를 선택하면 왜 실린더를 선택할 수 없나요?
바로 그거죠.
차이점입니다.
빠른 적용.
이제 이 점을 숨기면 이 서페이스가 일치하지 않는다는 문제가 발생할 수 있습니다.
일반적으로 부울 차이를 수행할 때 클리핑을 방지하려면 잘라내는 오브젝트가 잘라내는 오브젝트보다 길거나 커야 합니다.
이 이상한 클리핑은 두 서페이스가 일치하기 때문에 발생합니다.
한쪽을 제거해도 다른 한쪽 표면은 여전히 존재합니다.
"우리가 실제로 할 수 있는 일은 여기로 가서 Z를 이동하는 것입니다.
레고 조각처럼 높이 차이가 있는 것을 볼 수 있습니다.
이 과정은 수동으로 완료할 수 있습니다.
블렌더에서는 아주 간단한 작업입니다.
저걸 삭제하면 끝입니다.
네, 구멍이 생겼습니다.
이게 제가 예상했던 모습이지만, 적어도 대부분의 경우 모든 것이 멋지게 설정되었습니다.
마지막으로 이 영상을 보여드리는 것만으로 너무 길게 만들고 싶지 않습니다."
이 기능으로 할 수 있는 것 중에는 이전에 테스트해 본 적이 없는 일종의 애니메이션도 있습니다.
Blender에서 시도해 보면 재미있을 것 같습니다.
저는 항상 Blender를 대문자로 써야 한다고 생각하지만 큰 차이가 있을지는 잘 모르겠습니다.
주방용 블렌더를 가리키는 것이 아니라는 것이 분명하기 때문에 그렇게 가정하고 있습니다.
3D 모델링 소프트웨어라는 것을 알 것이라고 확신합니다.
어쨌든, 본론으로 들어갑니다.
블렌더 애니메이션을 작성해 봅시다.
정육면체를 애니메이션으로 만들어 x축을 따라 1미터 이동시키는 Blender 스크립트를 작성합니다.
애니메이션은 5초 길이여야 합니다.
이 작업을 수행하려면 Blender의 애니메이션 탭을 사용해야 합니다.
이 작업을 수행할 수 있지만 복잡성이 있으므로 기대치를 낮게 설정하십시오.
블렌더의 텍스처 탭에서는 잘 작동하지 않을 가능성이 높습니다.
절차적 텍스처를 사용하는 것이 어려울 수 있지만 나중에 시도해 보겠습니다.
이 영상을 보고 Blender로 작업할 때 자신의 한계를 뛰어넘을 수 있는 영감을 얻으셨기를 바랍니다.
열성적인 Blender 사용자라면, (아직 다운되지 않았다는 가정 하에) Chat GBT에서 바로 사용할 수 있는 몇 가지 흥미로운 스크립트를 실행해 보시기 바랍니다.
여기에는 기본 큐브가 있습니다.
이것이 기본 큐브 크기입니다.
큐브라는 제목의 원점에 단위 크기와 위치가 설정되어 있습니다.
프레임은 1에서 250까지 초기화됩니다.
기본적으로 Blender는 초당 24프레임으로 실행되므로 250프레임을 24로 나누면 5초가 되지 않습니다.
하지만 괜찮습니다.
경로를 삽입합니다: 큐브 위치를 더하면 1이 됩니다.
0에서 1로 1미터씩 증가하고 있습니다.
뭔가 잘못된 것 같아요.
기대는 낮지만 두고 봐야죠.
좋아요, Alt + P를 누르세요.
좋아요, 이제 중심을 벗어났어요.
레이아웃으로 가서 고쳐야겠어요.
잠깐, 아, 알았어요.
*와우, 좋아요.
나쁘지 않네요, 정말이에요.
왜 안 될 거라고 생각했죠?
큐브 위치 X로 이동...
아, 알았어요.
보간이 되네요.
애니메이션이 보간되는 경우가 많다는 사실을 잊어버려서 키프레임이 두 개가 만들어졌어요.
카메라가 화면 왼쪽 하단을 가려서 타임라인을 볼 수 없습니다.
글쎄요, 볼 수 있을지도 모르겠네요.
아, 네, 할 수 있어요.
그래서 방금 키프레임 0과 250에 두 개의 키프레임을 만들었습니다.
"음과 블렌더에는 각 프레임의 단계가 두 위치로 균등하게 분할되는 보간 기능이 내장되어 있습니다.
그래서 큐브가 천천히 움직입니다.
하지만 작동한다는 사실이 인상적입니다.
심지어 블렌더에서 ChatGBT로 애니메이션을 만들 수도 있습니다.
캐릭터를 리깅하고 자동화할 수 있는지 궁금합니다.
한번 해보고 싶은 기능입니다.
아무튼 오늘은 이쯤에서 마무리하거나 일시 중지하겠습니다.
여기까지만 할게요.
영감을 얻으셨기를 바랍니다."
Blender나 다른 크리에이티브 소프트웨어 사용법을 알고 있을 것 같은데요.
영감을 얻어 직접 실험해 보세요.
어떤 것을 만들 수 있는지 보고 싶어요.
직접 동영상을 제작하고 있다면 댓글에 링크를 남겨 주세요.
이 소프트웨어는 더 좋아질 것입니다.
Chat GBT의 프로페셔널 버전이 가격표와 함께 출시될 예정이지만, 너무 높지 않기를 바랍니다.
개방형 AI와 서버 용량으로 인해 혼란과 의문이 제기되고 있지만, 이 소프트웨어가 많은 멋진 것들을 만들 수 있는 놀라운 소프트웨어라는 사실은 변하지 않습니다.
시청해 주셔서 감사합니다.
댓글과 좋아요를 남겨주세요.
다음에 또 뵙겠습니다.
[ English Summary ]
Describes how to integrate two frequently used pieces of software, ChatGPT and Blender.
It focuses on Blender's Scripting tab, which is not commonly used by Blender artists.
The Scripting tab allows you to import or write custom Python scripts that can be used to automate workflows or provide fine-tuning options in a scene or model.
This article provides an example of a validated prompt that provides a valid script, and the author implemented some ideas on the fly.
The desired output is a simple sphere ring, and the author uses the prompt to run a short script.
I encourage you to experiment with custom scripts in Blender using the Scripting tab.
[ English Full Text ]
Hello and welcome back to another tutorial!
This is going to be an integration of two of my favorite softwares, namely ChatGPT and Blender.
ChatGPT is obviously the more contemporary one.
I've received a couple of messages indicating that it has reached high capacity, so there's no guarantee that this will stay on.
Assuming that I'm logged in, I should have a continuous session, but we'll see.
We might get cut short as we work again.
Actually, I don't think I've worked with Blender before on this channel except for the background video, but I've used it for a couple of years now.
I've done a lot of creative projects with it.
Arguably, it is my favorite software to work with, if not Stable Diffusion.
I kind of go between that and Blender.
Blender, as a creative tool, is honestly insane.
The amount of progression, updates, and plugins that you can use is mind-blowing.
The amount of features is just incredible.
One thing we're going...
Today, we are going to work with, or more precisely, the only thing we will focus on in integration with Chatbot is the Scripting tab.
This is something I have never really touched upon.
In fact, if you speak to the average Blender artist, the majority of them would say that they have never really worked with the Scripting tab.
It is not a lesser-known tab in Blender, it is just not something that most people go for.
Scripting is, of course, a tab where you can import or write custom Python scripts.
Scripts can be used to automate your workflow or to offer more fine-tuning options in your scene or model.
While I am not entirely sure what a really good use case for scripting would be, I suppose it could be useful for automation or when dealing with a complicated scene with numerous moving parts that need to operate autonomously.
However, what we are going to do now is resize the viewport to get a better view of the 3D environment and continue our work.
Okay, so I am going to show you a few examples of proven prompts that provide valid scripts.
For the rest of the time, I will improvise and come up with some ideas on the spot.
This is a simple script that I have seen demoed previously.
The script it will produce is based on the following prompt: "Write a script that capitalizes text and writes a blender script." I apologize for any mistakes in my typing, as I have been experiencing some finger issues lately.
A Blender script generates 20 spheres in a ring around the origin.
The spheres are located at a radius of one meter and should be equally spaced.
The size of the spheres should be relatively small.
The desired output is a simple ring of spheres.
As soon as I sent that, you can see that my script is not being saved on the left side, which is unfortunate.
Let's see what is happening here.
We are importing bpy, and this is a very short script.
I have run this exact same prompt weeks ago, and I got a much longer script.
We have a "copy code" feature that I forgot about.
Let's try this: if we go to the scripting tab, click "new", and just copy and paste the code, then we can run the script using alt p.
However, it did not work this time in fact.
It seems that we have a couple of spheres superimposed on each other.
We have 20 of them, and they are not even centered.
This is obviously a different result.
Can you update the script so that the spheres are spaced out in a ring?
I don't want to be too specific with the radius here.
Although I did specify the radius as one meter, this looks odd.
Why is it defining an angle for "high in range" and setting it to be 2 pi divided by 28?
"Ok, wait.
This might work.
Let's try this.
Now, we'll go here and clear the script.
Clear all of these objects and repaste that.
What is it?
Alt P to run.
Beautiful!
Okay, yeah, I guess I should have been more detailed in the initial prompt or more specific.
But yeah, this is what I got a few weeks ago.
As you can see, we have these spheres.
These look like UV spheres, as opposed to icospheres.
It's a very interesting process, the way they..."
The model or script determines whether to use icospheres, ice, or UV spheres.
There are several ways to achieve this result in Blender.
If we examine the script more closely, we can see that we are defining equal spacing using a value of 2 multiplied by the Pi function, divided by 20.
However, I must admit that I am not an expert in Python, and I have never coded extensively with it.
Nonetheless, I can read between the lines in this script.
Please clarify the context and provide complete sentences to work with.
Thank you.
"Interesting use case!
You've mentioned some text-to-3D models, such as the one offered by Google (whose name you cannot recall), Nerf models, and Dream Fusion.
However, these models have limitations due to insufficient training data.
While there may be thousands or even millions of 3D models available, it is still not enough to provide sufficient training data."
"I am aware that the data training set present a challenge, hence we do not have very clear models.
However, there is an alternate way to produce 3D using text which involves writing a blender script, as we did in the previous example.
We can create a dog using primitive shapes to keep it simple.
Although, every time I use this prompt, I get different results.
We have specific titles assigned for the body, head, and ears.
Let's proceed to create ear one first."
Creating the ears separately is always fun.
It's interesting to see the model try to imagine what a dog looks like and then break it down into its basic features.
Apparently, the ears are a very prominent feature of a dog.
In fact, they're just the third and fourth features.
Then, we have leg one and leg two.
We should have two more legs.
We'll see.
These scripts tend to run a bit longer.
Of course, if I'm asking for an entire dog, you're talking about 10 or so primitive shapes.
If you want to get the very basic shape of a dog, we have to...
Okay, we got the tail in there.
That was it.
So, if we copy this code, and fair warning, don't get your hopes up, it's not going to look amazing.
But if we go ahead and hit Alt+P, it's not running.
Hmm, oh, there we go.
Okay, interesting.
You know what?
This is actually the best result I've seen so far.
This is genuinely surprising.
The proportions are not the best, obviously.
But in terms of object position, you can see the head.
Let's go to the side view.
We have it perfectly.
Yeah, the units here are spot on, as you can see with the background grid.
Hopefully, you can see that these cubes are set to an exact size in accordance with the background grid.
In terms of position, the connections are very flush.
The ears appear to meet at the top corner of the head, and the top surface seems to be perfectly centered.
Even the legs are disconnected in the front, which is interesting.
The tail is just a centered square, and everything is cubicle in nature, which is surprising.
I have used different shapes before, such as a sphere.
Or, it's like an oblong shape for the head, which is an interesting choice.
Here, we have more of a voxelated version, but honestly, kudos to the model.
This is the best result I've gotten so far.
If I were to look at this without knowing that it was AI-generated, that it was just some random voxel art, who knows?
I probably would, at some point, say, "Oh yeah, that's a dog," or that would be my second guess.
First guess, I'm not sure, but not bad, not bad at all.
Okay, so those are some of the previous problems I've used.
Let's try to come up with some new ones.
I will come up with something a little more challenging for the model.
This happens every time, as I keep pushing the model to more complex scenes.
Eventually, it breaks, and returns some errors.
The nice thing about Chachi BT is that it can troubleshoot errors simply through speaking to it.
You say, "Hey, I got this error," copy the error code, feed it back into the model, and most of the time, around 80% of the time, it is able to successfully troubleshoot that error on the first try.
Otherwise, you are just going to keep searching.
You may find yourself iterating through more and more prompts, and sometimes the error won't be resolved.
At this point, you might as well just give up because the model you know (Chat GPT) isn't optimized for this kind of thing.
It is optimized for code completion and code generation, but not really in this sphere as much.
The fact that it's able to create coherent Blender scripts at all is honestly fascinating and impressive.
So, let's move on to some more complicated shapes.
We've only been working with...
Superposition and differently positioned primitive objects.
But what if we use some more tools in Blender?
For example, an extrusion or a boolean?
Let's create a cube with a cylindrical pull through the center.
The quickest way to do this manually in Blender is, of course, to create a cube and a cylinder separately, then select the cube and apply a Boolean modifier with the cylinder as the driving object.
It's as simple as that.
Then you can apply any further necessary modifications.
To fix the grammar, here is the corrected text:"Add a modifier to create your cylindrical hole.
This will be a multi-step process.
Firstly, create a cube and make sure it's localized to the origin.
Then, create a perfect cylinder also localized to the origin.
Subtract the modifier using Boolean difference so that it is successfully different from the smartphone.
I am genuinely blown away by this impressive work.
I am 99% certain that this will work, but we'll see how it turns out."
"I'm confident this will work.
Okay, okay, okay.
We just have to fix the issue of hiding it.
No, we got an error there.
Um, okay.
So, not quite.
I got my hopes up.
We have it right up to this point.
I didn't read these last two lines.
Maybe that's why.
This looks correct.
We were initializing a Boolean.
We have a difference modifier applied with a cylinder applied as data.
I'm not sure what this line is doing.
Can we manually finish this process?
If I go over to the modifier, we can see that there's nothing in the modifier, right?"
Now, if I go to Boolean and select "Whoops," why am I unable to select the cylinder?
There we go.
Difference.
Fast Apply.
Now, if we hide that, one issue might be that these surfaces are coincident.
Typically, when performing a Boolean difference, the object that creates the cut should be longer or larger than the object being cut to avoid clipping.
This weird clipping is occurring because both surfaces are coincident.
Even if you remove one, the other surface is still present.
"What we could actually do is go here, and as for Z, I'm just going to shift it.
You can see that there's a difference in height, like a Lego piece.
You can finish the process manually.
This is a very simple thing in Blender.
If I delete that, there we go.
Yeah, so we got our hole.
This is what I would have expected to see, but it got most of the way there and set everything up nicely, at least.
The last thing is, I don't want to make this video too long just by showing you."
Some of the things that this is capable of doing are a type of animation, which I have never tested before.
This will be interesting to try in Blender.
I always feel like I should capitalize Blender, but I am not sure if it makes a huge difference.
I am assuming it does because it is obvious that it is not referring to a kitchen blender.
I am sure it would know that it is 3D modeling software.
Anyways, I digress.
Let's write a Blender animation.
Write a Blender script that animates a cube, moving it one meter along the x-axis.
The animation should be five seconds long.
This task requires using the Animation tab in Blender.
It may be possible to achieve this task, but setting expectations low due to the complexity involved.
It is unlikely to work well with the Textures tab in Blender.
Using a procedural texture may pose as a challenge, but I will try it later.
After seeing this, I hope it inspires you to push your own limits if you work with Blender.
If you're an avid Blender user, I encourage you to try running some interesting scripts on Chat GBT (assuming it's not down) that are out of the box and may surprise you.
Here, we have a default cube.
This is the default cube size.
We have our unit size and location set at the origin, titled Cube.
Our frames are initialized from 1 to 250.
By default, Blender runs at 24 frames per second, so 250 frames divided by 24 will not be five seconds long.
However, it's okay.
Insert path: Cube location plus equals one.
We are incrementing a whole meter, just going from zero to one.
I feel like this does not look right.
I have low hopes, but we'll see.
Okay, press Alt + P.
Okay, well, I mean, it's off-center now.
We have to go to the layout to fix it.
Wait, oh, okay.
*laughs* Wow, alright.
Um, not bad, genuinely.
Why did I think that wouldn't work?
Move the cube location X...
oh, okay, okay.
So it's interpolated.
I forgot animation is often interpolated, so it just created two keyframes.
Um, I cannot see the bottom left of the screen because my camera is covering it, so I can't see the timeline.
Well, maybe I can.
Oh, okay, yeah, I can.
So it just created two keyframes at keyframe zero and 250.
"Um and Blender have a built-in interpolation where the steps in each frame are equally split between two positions.
That's why the cube moves slowly.
But the fact that it works is impressive.
You can even animate with ChatGBT in Blender, which is crazy!
I wonder if it can rig and automate characters.
That's something I want to try.
Anyway, for today, I will close or pause that.
That's all I'm going to do.
Hopefully, this is inspiring."
I assume you know how to use Blender or other creative software.
Take some inspiration and experiment on your own.
I would love to see what kind of things you can create.
If you are making your own videos, please drop a link in the comments.
This software will only get better.
A professional version of Chat GBT is being released with a price tag, but hopefully, it won't be too high.
Open AI and server capacity are causing confusion and questions, but it doesn't change the fact that this is an amazing software that can create many cool things.
Thanks for watching.
Please leave a comment and a like.
I'll see you next time.
'IT 인터넷 > 일반' 카테고리의 다른 글
[ENG SUB] AI를 이용하여 실제로 돈버는 방법은?? 3분만에 가능.. :: ChatGPT 정리 (1) | 2023.03.22 |
---|---|
마케팅 천재, 타이 로페즈의 1억 버는 법 :: ChatGPT 정리 (1) | 2023.03.22 |
NVIDIA CEO 젠슨 황의 GTC 2023 기조연설 :: ChatGPT 정리 (0) | 2023.03.22 |
저는 AI 프롬프트 엔지니어입니다. ChatGPT를 사용하여 최상의 결과를 얻는 3가지 방법을 소개합니다. (0) | 2023.03.22 |
유니티의 ChatGPT는 정말 대단합니다! Unity3D와 ChatGPT 통합! :: ChatGPT 정리 (3) | 2023.03.22 |