반업주부의 일상 배움사
유니티의 ChatGPT는 정말 대단합니다! Unity3D와 ChatGPT 통합! :: ChatGPT 정리 본문
[ 요약 ]
Game from Scratch의 마이크가 Unity 게임 엔진 내에서 ChatGPT를 사용하는 방법을 보여줍니다.
이 데모는 ChatGPT를 어떻게 구현할 수 있는지, 그리고 얼마나 멋진지 보여줍니다.
아직 정식 버전으로 출시할 단계는 아니지만 개념 증명 이상의 의미를 지니고 있습니다.
Mike는 무작위 지점에 100개의 큐브를 만들고, 큐브 게임 오브젝트를 이동하고, 큐브를 회전하고, 콜라이더로 큰 바닥 오브젝트를 만들어 게임 개발의 흑마법을 보여줍니다.
이 기능을 사용하려면 ChatGPT API 키를 입력해야 합니다.
마지막으로 마이크가 10개의 포인트 조명을 무작위로 추가하는 방법을 보여드립니다.
Unity 내에서 ChatGPT를 사용하는 데 관심이 있으시다면 이 안내를 따라 게임 개발의 마법을 경험해 보세요.
ChatGPT in Unity is INSANE! Unity3D and ChatGPT integration!
https://www.youtube.com/watch?v=1WnYAYbytVU
#부수입100만원벌기 #온라인수익창출 #디지털노마드 #재택부업 #바이럴마케팅
https://www.jamongpick.com/23/34345
[ 한글 전체 ]
안녕하세요, 신사 숙녀 여러분, Game from Scratch의 마이크입니다.
오늘은 유니티 게임 엔진 내에서 ChatGPT를 사용하는 게임 개발의 마법을 보여드리려고 합니다.
또한 이 기능이 얼마나 멋진지 보여드리고(A), 아직 프라임 타임에 출시할 준비가 되지 않았다는 점도 보여드리겠습니다(B).
하지만 이것이 바로 이 아이디어의 전부가 아닙니다.
이 영상은 한 유니티 개발자가 개념 증명을 위해 ChatGPT를 유니티 엔진에 구현할 수 있는지 알아보기 위해 만든 것입니다.
놀라울 정도로 훌륭하지만 결함이 있습니다.
하지만 이미 로드했습니다.
이 약간 다른 버전을 만드는 방법을 보여드리겠습니다.
글꼴을 조금 더 크게 만들기 위해 스크립트도 수정했습니다.
따라서 여러분의 것이 이렇게 크게 보이지 않는다면 제가 스크립트를 변경했기 때문입니다.
기본적으로 이 ChatGPT AI 봇에 명령을 내린 다음 실행하면 됩니다.
때로는 제대로 작동하지 않을 수 있으며, 이 경우 원하는 작업을 수행할 때까지 실행 버튼을 계속 스팸으로 보내면 됩니다.
하지만 지금은 그가 했던 것과 동일한 스크립트를 실행해 보겠습니다.
필요한 부분을 수정하겠습니다: 실제로 시연해 보겠습니다.
이 기능은 매우 놀랍기 때문에 임의의 지점에 큐브 100개를 만들어 보겠습니다.
쾅, 성공했습니다.
자, 첫 번째 명령이 완료되었습니다.
여기서는 모두 "큐브"라고 불리는 것을 볼 수 있습니다.
이제 우리가 할 일은 문자 그대로 게임 오브젝트의 이름을 따옴표로 묶은 큐브를 이동시켜 Y가 Y의 절대값과 같아지도록 하는 것입니다.
그런 다음 실행해 보겠습니다.
때때로 오류가 발생할 수 있습니다.
기본적으로 명령을 다시 실행하면 정상적으로 작동합니다.
심각한 문제는 아닙니다.
이것은 단순한 개념 증명 이상의 것이므로 기술이 완벽하지 않을 수 있습니다.
이제 큐브 게임 오브젝트를 무작위로 회전시켜 보겠습니다.
실행하면 최종 결과를 볼 수 있습니다.
참고로 직접 설정할 때 문제가 발생하면 ChatGPT API 키를 입력해야 합니다.
좋아, "큐브가 정의되지 않았습니다"라고 표시되므로 실패한 것 같습니다.
가끔 챗봇이 바보처럼 행동하는 경우가 있지만 그래도 입력해야 합니다.
키를 입력하려면 오래 전에 가입한 경우 API 키가 부족할 수 있으며, 이 경우 작동하려면 결제 메커니즘을 입력해야 합니다.
따라서 null 예외가 발생한다면 아마도 그 원인일 것입니다.
자, 오브젝트를 무작위로 회전시켰으니 이제 콜라이더를 사용하여 큰 바닥 오브젝트를 만들어 보겠습니다.
이런, 콜라이더의 철자를 모르겠네요.
이번에는 어떤 기능을 하는지, 그리고 과거에 문제가 있었던 만큼 실제로 생성되는지 살펴봅시다.
좋아, 이론상으로는 바닥이 있어야 합니다.
네, 이제 바닥도 생겼습니다.
이제 바닥을 만들었으니 이동해 봅시다.
"게임 오브젝트 세 유닛 위"라는 표현을 그대로 사용하고 있습니다.
다시 말씀드리지만 실제 대본과 일관성을 유지하고 있습니다.
그의 스크립트에서 한 가지를 변경할 예정이지만 아주 작은 변경입니다.
이렇게 하면 모든 오브젝트가 두 단위 위로 이동합니다.
다 됐습니다.
이제 월드에 조명을 추가하겠습니다.
10개의 포인트 라이트를 무작위로 생성하겠습니다.
사실 두 가지 다른 컨텍스트에서 '포인트'를 두 번 사용하는 것이 약간 혼란스럽지 않다는 것이 놀랍습니다.
하지만 ChatGPT는 다소 무서운 기술입니다.
실제로 고닷 얼티밋 튜토리얼 튜터에서 동영상을 만들었습니다.
좋아요, 바로 거기서 실패했어요.
가끔 이런 오류가 발생하죠.
다시 실행해서 더 잘 되는지 봅시다.
왜 이런 식으로 작동하는지 모르겠습니다.
다시 말씀드리지만 이것은 개념 증명입니다.
임의의 지점에 10점을 생성합니다.
"10점"은 말이 안 되네요.
좋아요, 이제 작동합니다.
한 번 더 실행하여 포인트가 생성되는지 확인해 보겠습니다.
장면에 표시되므로 생성되었음을 즉시 알 수 있습니다.
이제 다시 10개의 무작위 포인트가 생겼습니다.
이것은 "실행" 버튼을 스팸으로 보내야 하기 때문에 가장 우아한 해결책은 아니지만 작업을 완료하는 것 같습니다.
이제 포인트 조명에 임의의 색상을 설정하겠습니다.
이것도 실행해 봅시다.
첫 번째 패스에서 명령이 실행되고 작동하면 좋겠지만, 그렇지 않다면 다시 실행해 보겠습니다.
다시 말하지만, 가장 우아한 해결책은 아닙니다.
가장 좋은 해결책은 여기에 있으며, 기본적으로 여기에 화살표가 보이면 이 모든 것이 적어도 한 번 이상 실행되도록 검증되었기 때문일 것입니다.
그래서 제가 이 사람이 한 일을 따르고 있는 것입니다.
자, 여기까지입니다.
이제 임의의 색상의 조명이 들어왔습니다.
다음에는 포인트 라이트의 강도와 범위를 늘려서 특히 채팅 GT 구현에서 화살표와 같은 문제가 해결되면 AI 지원 작업이 어떻게 수행되는지 실제로 확인할 수 있도록 할 예정입니다.
"미래의 일, 정말 놀랍습니다.
자, 조명을 업데이트했고 거의 다 끝났습니다.
이제 할 일은 큐브 게임 오브젝트에 리지드 바디 컴포넌트를 추가하는 것입니다.
고닷이나 언리얼 엔진에서도 동일한 통합 작업을 수행할 수 있는지 궁금하시다면, 못할 이유가 없습니다.
통합과 후크백 방법을 가르치기만 하면 됩니다.
이제 모든 게임 오브젝트는 리지드 바디를 가져야 하는데, 실제로 리지드 바디를 갖게 되어 매우 인상적입니다.
이제 ChatGBT가 어떻게 유용할 수 있는지 바로 알 수 있습니다.
방금 텍스트 명령을 사용하여 씬에 있는 100개의 엔티티에 게임 오브젝트를 추가했습니다.
정말 멋지네요.
원본 스크립트에는 없었지만 카메라가 없으므로 원본에 카메라를 하나 만들어 보겠습니다.
'카메라 위치'라고 말한 다음 생성합니다.
다음 단계를 수행하려면 카메라가 필요합니다.
이제 실행하면 카메라가 생성됩니다."
수정: 카메라 오브젝트를 원점에 바로 배치하고 프로세스를 완료했습니다.
마지막으로 플레이 모드를 시작하고 우리가 만든 것을 실제로 확인해 보겠습니다.
피직스를 연결하고, 바닥을 만들고, 모든 오브젝트에 리지드 바디를 추가하고, 씬에서 이동했습니다.
그 결과 놀랍도록 멋진 결과물이 탄생했습니다.
캐릭터를 조금만 위아래로 움직여도 똑같은 결과가 나옵니다.
여러 개의 조명과 게임 오브젝트를 생성하고 피직스와 충돌기 바닥을 추가했습니다.
텍스트 명령을 사용한 이 작업은 블랙매직의 경계를 넘나드는 작업입니다.
다시 한 번, 제 생각에는 정말 인상적인 결과물입니다.
앞서 말씀드린 것처럼 AI 통합을 사용했습니다.
프로젝트 키를 설정해야 합니다.
프로젝트 설정을 편집하고 AI 명령으로 이동합니다.
바로 거기에 키를 입력하세요.
처음 실행할 때 null 예외가 발생하면 현재 키가 활성화되지 않았기 때문입니다.
다른 몇 가지 세부 사항은 나중에 설명하겠습니다.
잠시 후에 다시 설명하겠습니다.
이 리포지토리는 바로 여기 저장소입니다.
아래에 관련 링크가 있습니다.
유니티 에디터와의 ChatGPT 통합입니다.
이 프로젝트는 기본적으로 ChatGPT를 Unity 에디터에 통합하고 자연어 프롬프트를 사용하여 제어할 수 있다는 개념 증명에 불과했습니다.
보시다시피 완벽한 경험은 아니었지만, 솔직히 결과적으로는 기대했던 것보다 더 잘 작동했습니다.
이것이 실용적일까요?
절대 아닙니다.
저는 그냥 재미있는 실험을 위한 프로젝트로 만들었습니다.
개념 증명은 특정 방법이 어떤 경우에는 효과적으로 작동하지 않지만 다른 경우에는 성공할 수 있음을 입증하기 위한 것입니다.
이 프로젝트의 주요 목표는 성공과 실패에서 아이디어를 모으는 것입니다.
모든 시도가 성공적인 결과를 가져오는 것은 아니라는 점에 유의하는 것이 중요합니다.
하지만 저는 이 첫 번째 접근 방식이 실패했다는 생각에는 동의하지 않습니다.
저는 몇 가지 사소한 예외를 제외하고는 그의 대본을 따랐고, 추가로 몇 가지 저만의 기법을 시도해 보았습니다.
놀랍게도 꽤 잘 작동합니다.
사실, 잠시 돌아가 보겠습니다.
여기서는 씬에 있는 모든 게임 오브젝트의 크기를 임의로 조정하고 있습니다.
이것은 스크립트의 일부가 아니라 제가 즉석에서 생각해낸 것입니다.
무슨 일이 일어나는지 봅시다.
잠깐만요, 먼저 재생을 중지하고 키를 제거하겠습니다.
좋아요, 스크립트를 다시 실행해 봅시다.
처음에 실패했습니다.
다시 시도해 봅시다.
이 부분은 분명히 다듬을 필요가 있습니다.
오류 발생 문제를 해결해야겠군요.
원래 계획에서 너무 많이 벗어난 것 같습니다.
스크립트에서 문제가 시작되는 것 같습니다.
아니면 조명의 크기를 조정하려고 하는데 작동하지 않는 것일 수도 있습니다.
오, 저기 있네요.
실행해 보았습니다.
다시 말하지만, 때로는 마침내 작동할 때까지 여러 번 시도해야 할 때도 있습니다.
하지만 젠장, 인상적입니다.
어쨌든 여기에서 액세스할 수 있습니다.
확인하려면 이 저장소를 복제하고 Unity 프로젝트로 열기만 하면 됩니다.
"20.2.2 이상은 기본적으로 가장 최신 버전의 Unity입니다.
이를 확인하려면 ChatGPT 키가 필요합니다.
이전에 ChatGPT에 가입한 적이 없는 경우 가입할 수 있습니다.
가입하면 크레딧을 받을 수 있습니다.
그런데 이 동영상이 끝나면 바로 이 키를 무효화하는 것을 클릭하겠습니다.
따라서 그 시점에 무효화되므로 제 키를 사용하려고 시도하지 마세요.
이 프로젝트에 대해 전반적으로 더 자세히 알고 싶으시다면 @kzr 또는 Kajiro Takahashi의 글을 참조하세요."
언급된 사람은 유니티 직원이며, 그들의 유니티 피드는 일반적으로 흥미롭습니다.
하지만 이 채팅에서는 ChatGPT를 Unity 게임 엔진에 통합하는 것에 대해 논의하고 있습니다.
그들은 최종 결과에 대해 다른 사람들이 어떻게 생각하는지, 그리고 이것이 AI 지원 게임 개발 툴의 시작이 될 수 있는지 궁금해합니다.
다른 사람들도 다른 게임 엔진에 이런 기능이 통합되기를 원하는지, 아니면 AI가 지원하는 세상을 두려워하는지 알고 싶어 합니다.
개인적으로는 이런 기능이 제대로 작동한다면 위협적이지 않고 도움이 된다고 생각합니다.
ChatGPT의 통합에 대해 다른 사람들이 일반적으로 어떻게 생각하는지 알고 싶어합니다.
여기까지입니다.
안녕히 계세요!
[ English Summary ]
Mike from Game from Scratch demonstrates how to use ChatGPT within the Unity game engine.
This demo shows how ChatGPT can be implemented and how cool it is.
It's not quite ready for prime time, but it's more than a proof of concept.
Mike creates 100 cubes at random points, moves the cube game object, rotates the cubes, and creates a large floor object with colliders to show the black magic of game development.
You'll need to enter your ChatGPT API key to use this feature.
Finally, Mike demonstrates how to randomly add 10 point lights.
If you're interested in using ChatGPT within Unity, follow these instructions to experience the magic of game development.
[ English Full Text ]
Hello, ladies and gentlemen, this is Mike from Game from Scratch.
Today I'm going to show you the magic of game development using ChatGPT inside the Unity game engine.
I'll also show you how cool this feature is (A) and how it's not ready for prime time (B).
But that's not what this idea is all about.
This video was created by a Unity developer to see if ChatGPT could be implemented into the Unity Engine as a proof of concept.
It's amazingly good, but flawed.
But you've already loaded it.
I'm going to show you how to make a slightly different version of this.
I've also modified the script to make the fonts a little bit bigger.
So if yours doesn't look this big, it's because I changed the script.
Basically, what you do is you give this ChatGPT AI bot a command and then you execute it.
Sometimes it might not work, in which case you just keep spamming the execute button until it does what you want it to do.
But for now, let's run the same script he did.
We're going to make the necessary modifications: Let's demonstrate this in action.
This is pretty amazing, so let's create 100 cubes at random points.
Boom, we're done.
Okay, the first command is complete.
You can see here that they're all called "cubes".
Now what we're going to do is literally move the cubes, which is the name of our game object in quotes, so that Y is equal to the absolute value of Y. Let's go ahead and execute it.
And then we're going to run it.
Sometimes you might get an error.
Basically, if you rerun the command, it should work fine.
It's not a serious problem.
This is more than just a proof of concept, so the technique may not be perfect.
Now let's try to randomly rotate the Cube GameObject.
Run it and you should see the end result.
Note that you'll need to enter your ChatGPT API key if you run into any issues when setting this up yourself.
Okay, it looks like it failed because it says "Cube not defined".
Sometimes chatbots act like idiots, but you still need to enter it.
To enter the key, if you signed up a long time ago, you might be out of API keys, in which case you'll need to enter a payment mechanism to make it work.
So if you're getting a null exception, that's probably the cause.
Okay, now that we've randomly rotated our object, let's create a large floor object using a collider.
Oops, I don't know how to spell collider.
Let's see what it does this time, and if it actually creates it, since we've had problems with it in the past.
Okay, so in theory, we should have a floor.
Yes, we now have a bottom.
Now that we have a floor, let's move it.
I'm using the phrase "three units above the GameObject" verbatim.
Again, we're being consistent with the actual script.
We're going to change one thing in his script, but it's a very small change.
This will move all objects two units up.
That's it.
Now let's add some lights to our world.
We're going to randomly generate 10 point lights.
I'm actually surprised that using "point" twice in two different contexts isn't a little confusing.
But ChatGPT is a rather scary technology.
I actually made a video about it in the Godot Ultimate Tutorial Tutor.
Okay, I failed right there.
I get these errors sometimes.
Let's run it again and see if it works better.
I don't know why it's working this way.
Again, this is a proof of concept.
It generates 10 points at random points.
"Ten points" doesn't make sense.
Okay, now it's working.
Let's run it one more time to see if the points are generated.
We know right away that they are generated because they show up in the scene.
Now we have 10 random points again.
This isn't the most elegant solution since we have to spam the "Run" button, but it seems to get the job done.
Now let's set a random color for the point lights.
Let's run this one too.
Hopefully the command will run and work on the first pass, but if not, let's run it again.
Again, not the most elegant solution.
The best solution is here, and basically, if you see an arrow here, it's probably because all of this has been verified to run at least once.
So that's why I'm following what this guy did.
Okay, so that's it.
We now have a randomly colored light coming in.
Next time, I'm going to increase the intensity and range of the point lights so that we can really see how AI-assisted tasks perform, especially once we get things like arrows worked out in our chat GT implementation.
"Future stuff, it's amazing.
Okay, we've updated the lights and we're almost done.
What we need to do now is add a rigid body component to our cube game object.
If you're wondering if you can do the same integration in Godot or Unreal Engine, there's no reason why you can't.
You just need to teach them how to integrate and hookback.
All game objects should now have a rigid body, and it's pretty impressive that they do.
Now you can immediately see how ChatGBT can be useful.
We just used a text command to add a game object to 100 entities in our scene.
That's really cool.
We don't have a camera in the original script, so let's create one.
Say "camera position" and then create it.
You'll need a camera for the next step.
Executing now will create a camera."
Correction: We placed the camera object right at the origin and completed the process.
Finally, let's launch Play Mode and see what we've created in action.
We connected our physics, created a floor, added rigid bodies to all of our objects, and moved them around the scene.
The result is something that looks amazing.
If we move the character up and down a little bit, we get the same result.
We created several lights and GameObjects, and added physics and a collider floor.
This work with text commands is really pushing the boundaries of Blackmagic.
Again, this is a really impressive result in my opinion.
As I mentioned earlier, I used the AI integration.
We need to set up a project key.
Edit your project settings and go to AI Commands.
Enter your key right there.
If you get a null exception the first time you run it, it's because the key is not currently enabled.
There are a couple other details that we'll talk about later.
We'll come back to that in a second.
This is the repository right here.
There's a link to it below.
This is the ChatGPT integration with the Unity Editor.
This project was basically just a proof of concept that ChatGPT can be integrated into the Unity Editor and controlled using natural language prompts.
As you can see, it wasn't a perfect experience, but in the end, it worked better than I expected.
Is this practical?
Absolutely not.
I just made it as a project for a fun experiment.
A proof of concept is meant to prove that a certain method doesn't work well in some cases, but can be successful in others.
The main goal of this project is to gather ideas from successes and failures.
It's important to note that not every attempt will result in a successful outcome.
However, I disagree with the idea that this first approach was a failure.
I followed his script with a few minor exceptions, and additionally tried a few techniques of my own.
Surprisingly, it works pretty well.
In fact, let's backtrack for a moment.
What I'm doing here is randomly resizing all the game objects in the scene.
This is not part of the script, but something I came up with on the fly.
Let's see what happens.
Wait, let me stop playback first and remove the key.
Okay, let's run the script again.
It failed the first time.
Let's try again.
This part obviously needs to be polished.
We're going to have to fix that error.
I think we've strayed too far from the original plan.
It looks like the problem starts in the script.
Or maybe it's trying to resize the light and it's not working.
Oh, there it is.
I tried running that.
Again, sometimes you have to try multiple times until it finally works.
But damn, it's impressive.
Anyway, you can access it here.
To check it out, all you have to do is clone this repository and open it as a Unity project.
"20.2.2 or later is the most recent version of Unity by default.
To verify this, you'll need your ChatGPT key.
If you haven't signed up for ChatGPT before, you can sign up.
You'll get a credit for signing up.
By the way, right at the end of this video, I'm going to click on invalidate this key.
So don't try to use my key because it will be invalidated at that point.
If you're interested in learning more about this project in general, check out @kzr or Kajiro Takahashi's article."
The people mentioned are Unity employees, and their Unity feeds are generally interesting.
But in this chat, they're discussing integrating ChatGPT into the Unity game engine.
They want to know what others think of the end result and if this could be the start of an AI-assisted game development tool.
They want to know if others would like to see this integrated into other game engines, or if they are afraid of an AI-enabled world.
Personally, I think these features are helpful, not threatening, if done right.
They want to know what others think about ChatGPT's integration in general.
That's all for now.
Bye bye!
'IT 인터넷 > 일반' 카테고리의 다른 글
NVIDIA CEO 젠슨 황의 GTC 2023 기조연설 :: ChatGPT 정리 (0) | 2023.03.22 |
---|---|
저는 AI 프롬프트 엔지니어입니다. ChatGPT를 사용하여 최상의 결과를 얻는 3가지 방법을 소개합니다. (0) | 2023.03.22 |
RUNWAY GEN-2 TEXT TO VIDEO 곧 출시 되는가? 진짜 큰 거 옵니다. :: ChatGPT 정리 (0) | 2023.03.22 |
ChatGPT의 아버지가 말하는 인공지능 최악의 미래 :: ChatGPT 정리 (0) | 2023.03.22 |
🔥이걸 아는 사람만 새로운 기회를 얻는다?! 미래직업 챗GPT 사용법 - 이경전 교수 '20분 레벨업' :: ChatGPT 정리 (0) | 2023.03.22 |