디시인사이드 갤러리

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

갤러리 본문 영역

[일반] 코루틴 라이브러리 만들어 봤음

인디게임지망생갤로그로 이동합니다. 2024.05.16 23:36:57
조회 145 추천 1 댓글 2
														

https://github.com/masterjo/GodotUtilScript

 



yield 와 resume 방식이 좋았던거 같아서....


비슷하게 만들어봄


사용법은 test.gd 처럼   lpt.Coroutine 클래스를 상속받아서 run 함수를 오버라이딩 하면 됨...


class MyCoroutine extends lpt.Coroutine:

func run(arg,_myEnd := _EndChecker.new(self)):

print("start = id : "  + str(arg))

await _S_Tick

print("do-1  = id : "  + str(arg))

await _S_Tick

print("do-2  = id : "  + str(arg))

await _S_Tick

print("end  = id : "  + str(arg))


이런식으로 코루틴 만들면 되고....


아래처럼 사용하면 됨


[  참고로 이건  그대로 써주기만 하면 됨  무시 - myEnd := _EndChecker.new(self) - 소멸자 방식으로 코루틴이 끝까지 갔는지 체크용  ]


func test():
	var co = MyCoroutine.new()	
	var co1 = MyCoroutine.new()	

	lpt.CoroutineMgr.create(co,11)
	
	lpt.CoroutineMgr.run()
	lpt.CoroutineMgr.run()
	
	
	lpt.CoroutineMgr.create(co1,22)
	
	
	lpt.CoroutineMgr.run()
	co1.isEnd = true
	
	lpt.CoroutineMgr.run()
	
	lpt.CoroutineMgr.run()
	lpt.CoroutineMgr.run()
	


코루틴 객체를 만든것을 lpt.CoroutineMgr.create의 첫번째 인자로 넣어주면 되고 2번째는 Coroutine.run 함수에 첫번째로 들어오는 인자임



lpt.CoroutineMgr.run를 하면  create된 코루틴 객체를 resume하면서 실행시킴


코루틴 도중에 제거하려면 코루틴 객체에 isEnd = true 넣어주면 됨



이렇게하면 yield 처럼  직접 코루틴을 제어하는 방식으로 동작하게 됨....

난 참고로 예전에 1초에 60번  lpt.CoroutineMgr.run 시키는 방식으로 동작시켰었음 ( physics_process처럼 )



추천 비추천

1

고정닉 1

0

댓글 영역

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

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 말머리 제목 글쓴이 작성일 조회 추천
2864 설문 비난 여론에도 뻔뻔하게 잘 살 것 같은 스타는? 운영자 24/06/03 - -
1 공지 고도엔진 마이너갤러리입니다 Monung갤로그로 이동합니다. 20.04.23 1855 15
116 공지 내가 본 것중 젤 도움된 튜토리얼 [11] ㅇㅇ(121.161) 20.09.15 7636 21
4396 질문 Engine.time_scale 조정하면 물리 함수 호출이 이상해짐 [1] longZam갤로그로 이동합니다. 05:08 11 0
4395 일반 고도엔진에 대한 지지를 철회한다 [5] longZam갤로그로 이동합니다. 03:38 33 0
4394 일반 혹시 오픈 프로젝트 볼만한거 없을까 [5] ㅇㅇ(211.192) 00:24 46 0
4393 일반 get_root() 의 루트는 어떤루트임? [2] ㅇㅇ (180.71) 06.05 42 0
4392 일반 논픽셀 2d 게임 만드려면 해상도는 4K로 깔고 시작하면 되겠지? [2] ㅇㅇ(211.192) 06.05 33 0
4391 일반 get_overlapping_areas() 빨라서 안되는 예제 [4] ㅇㅇ(39.123) 06.05 76 0
4390 일반 막상 아이템 사용<<<어떻게 만들어야할지 고민되네 [4] ㅇㅇ갤로그로 이동합니다. 06.05 44 0
4389 자료 리빙포인트) gdscript에서도 세미콜론을 쓸 수 이따 [4] 흉황갤로그로 이동합니다. 06.05 54 0
4388 일반 get_overlapping_areas() 이거 오류가 너무 많은데.. [4] ㅇㅇ(39.123) 06.05 57 0
4387 일반 --- [4] 김메가갤로그로 이동합니다. 06.05 108 3
4385 일반 갤질 그렇게 하는거 아닌데 [9] ㅇㅇ(211.234) 06.05 162 3
4384 일반 파티클2d 쓸때 걍 GPU만 쓰는데 질문있어요 [3] 새벽요정갤로그로 이동합니다. 06.05 63 0
4383 일반 고도 씨샾 많이 개선됨? [5] ㅇㅇ (180.71) 06.05 113 0
4381 일반 GDScript is fine [2] ㅇㅇ갤로그로 이동합니다. 06.05 149 10
4380 일반 완장한테하는말인데 [7] ㅇㅇ(1.216) 06.05 137 1
4379 일반 한 명 또 고로시당했노 ㅇㅇ갤로그로 이동합니다. 06.05 92 2
4378 일반 근데 gds보다는 c#이 훨씬 더 좋은 거 팩트아님? [10] ㅇㅇ갤로그로 이동합니다. 06.05 194 2
4377 일반 엔진 공홈 개발자 노트에 자캐 넣는거 뭐임 [3] ㅇㅇ(118.42) 06.05 90 0
4376 일반 대피소는 고도엔진 채널... [3] ㅇㅇ(210.101) 06.05 112 1
4375 일반 와 고갤에서 싸우는거 처음봐 [5] ㅇㅇ(218.157) 06.05 148 0
4374 일반 죽여라 [2] ㅇㅇ(180.182) 06.05 97 0
4373 일반 4.3정식 버전이 생각보다 오래 걸리는 구나 얍얍(175.192) 06.05 58 0
4372 일반 고도 아이콘 좀 귀여운거 같음 [3] 고도초보자(222.236) 06.05 60 0
4371 질문 Godot4 characterBody2d 단방향 플랫폼 스냅 문제 질문점 [4] longZam갤로그로 이동합니다. 06.04 86 0
4370 일반 ???: 수준이 낮아서야 원 ㅋㅋ 겸손할 줄 아세요 [40] ㅇㅇ(118.235) 06.04 437 10
4369 일반 호감고닉들 긴장해라 [6] ㅇㅇ(223.39) 06.04 146 3
4368 질문 뉴비 질문 [6] 로제타갤로그로 이동합니다. 06.04 94 0
4367 일반 고도의 딸각빌드가 그립구나... [20] 정짜르갤로그로 이동합니다. 06.04 223 0
4366 질문 같은 이미지가 여러개 겹치는건 어떤원리야? [7] ㅇㅇ (180.71) 06.04 122 0
4365 일반 c#으로 넘어가야겠음. [24] ㅇㅇ(118.235) 06.04 260 0
4363 일반 와하하 드디어 언팩에 성공했다! [6] 퀼트갤로그로 이동합니다. 06.04 237 0
4360 일반 고도콘 v1 출시안내 [12] boost갤로그로 이동합니다. 06.03 213 6
4359 일반 갤 관리안하고 인갤만 놀러가면 [1] ㅇㅇ(211.195) 06.03 136 3
4353 일반 Godot, The gayme engine. [11] ㅇㅇ(222.113) 06.03 257 0
4351 일반 악! 게 이임을만드는건너무조아 해병님! [6] ㅇㅇ(118.235) 06.03 206 5
4350 일반 왜또 비주얼 코드 주석 고장났지 [1] 환월갤로그로 이동합니다. 06.03 66 0
4349 질문 언팩하는 방법좀 자세히 알려주실분...? [4] 퀼트갤로그로 이동합니다. 06.03 188 0
4347 일반 클라이언트단도 언어 영향 크나? [16] 악몽의융합체갤로그로 이동합니다. 06.02 252 0
4346 일반 이거 좀 지리네 ㅇㅇ(125.137) 06.02 101 0
4344 질문 고도 itemlist 유용해 보이는데 어떻게 쓸지 모르겠네요 [4] ㅇㅇ(221.141) 06.02 90 0
4343 일반 와 서버 막혀서 질질 끌렸는데 결국 강좌 다 끝냄. [4] ㅇㅇ(125.137) 06.02 163 3
4342 창작, 오늘한것 - 테트리스인벤 도전 (#18) [1] ㅇㅇ갤로그로 이동합니다. 06.02 126 7
4341 일반 어떤 수학을 배우면 좋음? [14] 얍얍(175.192) 06.02 236 3
4340 일반 게임엔진별 랜덤 [4] boost갤로그로 이동합니다. 06.02 193 3
4339 일반 [해결함]혹시 이 튜토리얼 자료 멀티플레이 실행 가능한 사람 있음? ㅇㅇ(125.137) 06.02 88 1
4338 일반 고도콘 등록완료 [2] boost갤로그로 이동합니다. 06.02 130 0
4337 일반 귀여운 고도콘 발견 [8] boost갤로그로 이동합니다. 06.01 174 2
4336 일반 animatedsprite2D 인터페이스 있잖아 [17] ㅇㅇ(125.137) 06.01 124 0
4335 질문 (해결) 커서 앞뒤로 왔다갔다 하는 단축키 없음? [4] boost갤로그로 이동합니다. 06.01 87 0
4334 일반 이게임 아류작으로 만들어 보고 싶은데 도저히 엄두가 안난다 ㅋㅋ [9] 퀼트갤로그로 이동합니다. 06.01 217 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2