Тема: Monkey 2
Показать сообщение отдельно
Старый 11.12.2017, 15:19   #1
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Monkey 2

Новый мощный современный язык + развивается = новые возможности,
и добрый почти как блитц!

Качать тут: https://blitzresearch.itch.io/monkey2

Форум и блог тут (en): http://monkeycoder.co.nz/forums/

Discord каналы тут (en/ru): https://discord.gg/pRcwCKw

Ниже пример простенького 3д приложения.
(меню File -- Templates -- Simple mojo3d app)
Заметьте, как легко добавляются постэффекты.
И PBR материалы из коробки.

Namespace myapp3d

#Import "<std>"
#Import "<mojo>"
#Import "<mojo3d>"

Using std..
Using mojo..
Using mojo3d..

Class MyWindow Extends Window
	
	Field _scene:Scene
	
	Field _camera:Camera
	
	Field _light:Light
	
	Field _donut:Model
	
	Field _bloom:BloomEffect
	
	Method New( title:String="Simple mojo3d app",width:Int=640,height:Int=480,flags:WindowFlags=WindowFlags.Resizable )

		Super.New( title,width,height,flags )
		
		_scene=Scene.GetCurrent()
		
		_scene.ClearColor=Color.Black
		
		_bloom=New BloomEffect
		
		_scene.AddPostEffect( _bloom )
		
		'create camera
		'
		_camera=New Camera
		_camera.Near=.1
		_camera.Far=100
		_camera.Move( 0,10,-10 )
		_camera.AddComponent<FlyBehaviour>()
		
		'create light
		'
		_light=New Light

		_light.RotateX( 90 )
		
		Local material:=New PbrMaterial( Color.Black )
		material.EmissiveFactor=New Color( 0,2,0 )
		
		_donut=Model.CreateTorus( 2,.5,48,24,material )
		
		_donut.Move( 0,10,0 )
	End
	
	Method OnRender( canvas:Canvas ) Override
	
		RequestRender()
		
		If Keyboard.KeyHit( Key.Escape ) App.Terminate()
		
		If Keyboard.KeyHit( Key.Space ) _donut.Visible=Not _donut.Visible
		
		_donut.Rotate( .2,.4,.6 )
		
		_scene.Update()
		
		_scene.Render( canvas,_camera )
		
		canvas.DrawText( "Width="+Width+", Height="+Height+", FPS="+App.FPS,0,0 )
	End
	
End

Function Main()

	New AppInstance
	
	New MyWindow
	
	App.Run()
End

Последний раз редактировалось Жека, 11.12.2017 в 17:31.
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо Жека за это полезное сообщение:
ARA (12.12.2017), Arton (12.12.2017), Randomize (12.12.2017), St_AnGer (12.12.2017)