www.boolean.name

www.boolean.name (http://forum.boolean.name/index.php)
-   Monkey (http://forum.boolean.name/forumdisplay.php?f=163)
-   -   Monkey 2 (http://forum.boolean.name/showthread.php?t=20674)

Жека 11.12.2017 12:19

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


Жека 02.02.2018 15:05

Ответ: Monkey 2
 
Сделали редизайн сайта, развивается потихоньку! :)


Часовой пояс GMT +1, время: 05:58.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Перевод: zCarot