디시인사이드 갤러리

마이너 갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

[AI창작] GPT-4o 활용해서 태어나서 처음으로 게임하나 만들어봄

ㅇㅇ(121.151) 2024.05.18 08:40:54
조회 468 추천 1 댓글 2
														

GPT-4o으로 게임만드는 글이 몇개 보이길래 나도 한번 만들어봤음.

파라미터 몇개 수정한거 말고는 코드에 손댄거 없고, 다 GPT가 직접 짜준 코드임.

다른 LLM 써보면 힌트정도만 알려주지 소스코드를 처음부터 끝까지 다 써주는 경우는 적은데,
GPT-4o는 다 해줘서 좋은듯. 다른건 코드 짜도 오류가 넘 많은데 GPT-4o는 오류가 없거나 있어도 수정해달라고 하면 다 고쳐줌.

아래 게임은 마우스로 검은 바탕에 클릭하면 먼지입자 생기고 클릭 당시의 방향이랑 가속도 고려하니까 던지듯이 생성할수도 있으니 참고!

관심있으면 아래 코드도 실행해봐.


7cec8177abc236a14e81d2b628f1756f5c466e


import pygame
import math

# 초기화
pygame.init()

# 화면 크기 설정
WIDTH, HEIGHT = 1400, 900
screen = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption("Gravity Game")

# 색상
BLACK = (0, 0, 0)
WHITE = (255, 255, 255)
YELLOW = (255, 255, 0)
GRAY = (100, 100, 100)
LIGHT_GRAY = (200, 200, 200)
BLUE = (0, 0, 255)

# 중앙의 별 설정
star_mass = 50000 # 임의의 큰 값 (줄여서 속도 감소)
star_radius = 15 # 시각적으로 작은 크기
star1_initial_pos = [WIDTH // 2 + 50, HEIGHT // 2]
star2_initial_pos = [WIDTH // 2 - 50, HEIGHT // 2]
star1_pos = star1_initial_pos[:]
star2_pos = star2_initial_pos[:]
star1_angle = 0
star2_angle = math.pi

# 행성 리스트
planets = []

# 마우스 드래그 상태 변수
dragging = False
start_pos = (0, 0)

# 중앙의 행성 수
num_stars = 1

# 폰트 설정
font = pygame.font.SysFont(None, 24)

# 버튼 위치와 크기
reset_button_rect = pygame.Rect(10, 10, 80, 30)
one_star_button_rect = pygame.Rect(100, 10, 80, 30)
two_star_button_rect = pygame.Rect(190, 10, 80, 30)

# 행성 클래스
class Planet:
def __init__(self, x, y, vx, vy):
self.x = x
self.y = y
self.vx = vx
self.vy = vy
self.radius = 5
self.mass = 1

def update(self):
# 모든 별에 대한 중력 계산
for star_x, star_y in star_positions:
dx = star_x - self.x
dy = star_y - self.y
distance = math.sqrt(dx**2 + dy**2)
# 중력 적용 (중력가속도 감소)
force = star_mass / (distance**2)
angle = math.atan2(dy, dx)
ax = math.cos(angle) * force
ay = math.sin(angle) * force
# 가속도 적용
self.vx += ax * 0.05 # 속도 감소
self.vy += ay * 0.05 # 속도 감소
# 위치 업데이트
self.x += self.vx
self.y += self.vy

def draw(self):
pygame.draw.circle(screen, WHITE, (int(self.x), int(self.y)), self.radius)
pygame.draw.circle(screen, BLUE, (int(self.x), int(self.y)), self.radius - 2) # 시각적 효과

# 버튼 그리기 함수
def draw_buttons():
pygame.draw.rect(screen, LIGHT_GRAY, reset_button_rect)
pygame.draw.rect(screen, LIGHT_GRAY, one_star_button_rect)
pygame.draw.rect(screen, LIGHT_GRAY, two_star_button_rect)
pygame.draw.rect(screen, GRAY, reset_button_rect, 2)
pygame.draw.rect(screen, GRAY, one_star_button_rect, 2)
pygame.draw.rect(screen, GRAY, two_star_button_rect, 2)

reset_text = font.render("Reset", True, BLACK)
one_star_text = font.render("1 Star", True, BLACK)
two_star_text = font.render("2 Stars", True, BLACK)

screen.blit(reset_text, (reset_button_rect.x + 10, reset_button_rect.y + 5))
screen.blit(one_star_text, (one_star_button_rect.x + 10, one_star_button_rect.y + 5))
screen.blit(two_star_text, (two_star_button_rect.x + 10, two_star_button_rect.y + 5))

# 초기화 함수
def reset_game():
global planets
planets = []

# 게임 루프
running = True
clock = pygame.time.Clock()

while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
elif event.type == pygame.MOUSEBUTTONDOWN:
mouse_pos = pygame.mouse.get_pos()
if reset_button_rect.collidepoint(mouse_pos):
reset_game()
elif one_star_button_rect.collidepoint(mouse_pos):
num_stars = 1
elif two_star_button_rect.collidepoint(mouse_pos):
num_stars = 2
else:
start_pos = pygame.mouse.get_pos()
dragging = True
elif event.type == pygame.MOUSEBUTTONUP:
if dragging:
end_pos = pygame.mouse.get_pos()
mx, my = end_pos
vx = (end_pos[0] - start_pos[0]) * 0.05 # 던지는 속도 감소
vy = (end_pos[1] - start_pos[1]) * 0.05 # 던지는 속도 감소
planets.append(Planet(mx, my, vx, vy))
dragging = False

# 화면을 검은색으로 채우기
screen.fill(BLACK)

# 중앙의 별 위치 업데이트 및 공전
if num_stars == 1:
star_positions = [star1_initial_pos]
elif num_stars == 2:
star_positions = [star1_pos, star2_pos]
# 두 별 사이의 공전
star1_angle += 0.01
star2_angle += 0.01
star1_pos = [WIDTH // 2 + 50 * math.cos(star1_angle), HEIGHT // 2 + 50 * math.sin(star1_angle)]
star2_pos = [WIDTH // 2 + 50 * math.cos(star2_angle), HEIGHT // 2 + 50 * math.sin(star2_angle)]

# 중앙의 별 그리기
for pos in star_positions:
pygame.draw.circle(screen, YELLOW, (int(pos[0]), int(pos[1])), star_radius)

# 버튼 그리기
draw_buttons()
# 행성 업데이트 및 그리기
for planet in planets:
planet.update()
planet.draw()

# 화면 업데이트
pygame.display.flip()
clock.tick(144)

pygame.quit()


자동등록방지

추천 비추천

1

고정닉 1

원본 첨부파일 1

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 말머리 제목 글쓴이 작성일 조회 추천
2868 설문 힘들게 성공한 만큼 절대 논란 안 만들 것 같은 스타는? 운영자 24/06/10 - -
488651 일반 난 진지하게 2027 예상함 [2] ㅇㅇ(61.75) 06.08 143 0
488649 일반 ai가 대체못하는게 있긴하다 [3] 꼬마귀염선충!갤로그로 이동합니다. 06.08 155 0
488648 일반 GPT-4o를 스케일업하기만 해도 [3] ㅇㅇ(59.21) 06.08 156 0
488647 일반 인류의 총 지식을 담을 수 있는 AGI는 상상할수록 체감이 안됨 측면강타갤로그로 이동합니다. 06.08 73 0
488645 일반 (뇌피셜)GPT-5가 가을은 지나야 나오지 않을까 [3] 분노의라스갤로그로 이동합니다. 06.08 209 0
488644 일반 gpt4o << excel goat god [2] ㅇㅇ갤로그로 이동합니다. 06.08 163 1
488643 일반 2022년에 2024년 되면 agi 올거라고 믿었는데 [2] 지혜원갤로그로 이동합니다. 06.08 197 0
488642 일반 직업대체될거라 생각한게 19년도인데 [4] 선샌니~갤로그로 이동합니다. 06.08 193 0
488641 일반 GPT-5는 8개월뒤 [1] ㅇㅇ(14.7) 06.08 103 0
488640 일반 2년안애 AGI나옴 [7] 꼬마귀염선충!갤로그로 이동합니다. 06.08 313 0
488639 일반 특이점이 온다... 바라는 것은 세계평화...! [1] ㅇㅇ(1.239) 06.08 106 0
488638 일반 학력으로 대우받는 시대도 끝날듯 [5] 꼬마귀염선충!갤로그로 이동합니다. 06.08 231 0
488637 일반 박사급 지식을 가진 AI가 나오면 그게 바로 ASI임 [7] 초코냥갤로그로 이동합니다. 06.08 274 1
488636 일반 애플은 OAI와의 기업제휴가 가장 차선책임 ㅇㅇ(221.167) 06.08 53 1
488635 일반 suno 이건 왜 더 안 좋아진 느낌이지 ㅇㅇ갤로그로 이동합니다. 06.08 64 0
488634 일반 박사급 통과했으면 꼬마귀염선충!갤로그로 이동합니다. 06.08 89 0
488633 일반 쓸만한 ai 나오는 시기 알려준다 [2] ㅇㅇ갤로그로 이동합니다. 06.08 164 2
488632 일반 예전에 애플이 OAI한테 의존할거라는 글에 [6] et갤로그로 이동합니다. 06.08 215 0
488631 일반 진짜 솔직히 고졸이긴 한데 박사란게 얼마나 똑똑한거임? [23] ㅇㅇ(222.120) 06.08 379 1
488630 일반 AI 영향을 최대한 안 받을거 같은 직업이 뭐라 생각함? [18] ㅇㅇ(122.47) 06.08 223 0
488629 일반 대충 보면 메타, 구글은 현 방식으론 agi 불가능 [3] ㅇㅇ(115.139) 06.08 171 0
488628 정보/ 애플은 왜 AI 경쟁에서 뒤쳐졌나? [4] ㅇㅇ(218.50) 06.08 231 1
488627 일반 제발 박사급 추론능력 gpt 나와서 [4] ㅇㅇ(147.46) 06.08 170 0
488626 일반 GPTs 만들어쓰는 애들 많냐? [9] AppHiki갤로그로 이동합니다. 06.08 214 0
488625 일반 phi는 욀케 병신 같냐 ㅇㅇ(112.169) 06.08 60 0
488624 일반 경계선 여친 보테베 임신 조련 시키고 싶노 [18] Dall리신(121.157) 06.08 387 0
488623 일반 뤼x 금지어 건의함 [3] ㅇㅇ(14.55) 06.08 1353 22
488622 일반 왤케 멍청한 애들이 많냐 [1] ㅇㅇ(211.107) 06.08 140 0
488621 일반 솔직히 경계선지능도 장애로 쳐줘야할듯 [16] ㅇㅇ(115.139) 06.08 286 2
488620 일반 아아아아악!!! [2] ㅇㅇ(110.11) 06.08 72 0
488619 일반 이거 추론능력으로 통과한거임? [3] ㅇㅇ(58.29) 06.08 179 0
488618 일반 법령에 대한 질문에서 추론능력이 모자른듯 [1] ㅇㅇ(118.235) 06.08 62 0
488617 일반 제발 어그로 끌 때는 고닉 파고 끌어주면 안 되냐 A.I.갤로그로 이동합니다. 06.08 66 0
488616 일반 사실 님들은 다 환생함 ㅇㅇ(1.249) 06.08 56 0
488615 일반 얀르쿤vs일론 누가더 특갤에서 비호감이냐? ㅇㅇ(117.111) 06.08 83 0
488614 일반 '박사급 추론능력' 의 진실 [153] ㅇㅇ(221.167) 06.08 850 0
488611 일반 뤼튼이 해결해야할 문제 [3] et갤로그로 이동합니다. 06.08 296 1
488610 일반 AGI의 정의의 ㅇㅇ(221.167) 06.08 52 0
488609 일반 특이점이 21세기의 새로운 종.교인듯 [1] ㅇㅇ(211.241) 06.08 97 0
488608 일반 특이점 오면 이것도 다 가능한가요?? [6] ㅇㅇ(211.36) 06.08 111 0
488607 일반 근데 GPT-5가 박사급 추론이면 [15] ㅇㅇ(61.72) 06.08 353 0
488606 일반 gpt5 언제 나옴 ㅇㅇ(106.102) 06.08 52 0
488604 일반 뤼튼 바이럴 존나심해졌네 솔.이☆갤로그로 이동합니다. 06.08 291 8
488603 일반 gpt4 나온지 이제 1년됐는데 근들갑은ㅋㅋㅋㅋ [3] ㅇㅇ(223.62) 06.08 280 3
488602 일반 한가지 생각해봐야될게있음 ㅇㅇ(112.165) 06.08 61 0
488601 일반 ai 때문에 일자리를 잃는다고? ㅇㅇ(211.36) 06.08 87 0
488600 일반 이새끼 하나면 니들이 빠는 초지능따위 싹 다 몰살가능함ㅋㅋㅋㅋ [18] ㅇㅇ(211.36) 06.08 2781 29
488599 일반 응특이점안와 ㅇㅇ(116.40) 06.08 99 2
488598 일반 gpt4o 왤캐 멍청해졌지...제한 걸린건가 놋갤만해요갤로그로 이동합니다. 06.08 76 0
488597 일반 이거 안되냐 응아잇어(116.36) 06.08 33 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2