Babylon.sbi for SpiderBasic

Rubriques generale concernant SpiderBasic
Avatar de l’utilisateur
Cool Dji
Messages : 1126
Inscription : ven. 05/sept./2008 11:42
Localisation : Besançon
Contact :

Re: Babylon.sbi for SpiderBasic

Message par Cool Dji »

C'est vraiment top ce que tu proposes falsam.
Est-ce que Babylon va être intégré officiellement à SpiderBasic ?
Only PureBasic makes it possible
Avatar de l’utilisateur
Arbrakan
Messages : 34
Inscription : lun. 24/janv./2011 10:52
Localisation : Genève
Contact :

Re: Babylon.sbi for SpiderBasic

Message par Arbrakan »

Un grand Merci falsam pour ton taff ! C'est vraiment excellent !

Je suis sur un petit projet 2D/3D et le couple Spider Basic / babylon.js c'est l'outil parfait pour cela.

Je me suis aussi lancé dans l'adaptation de Babylon.js pour SB, étant donné qu'il n'y a pas encore toute les commandes don j'ai besoin.
Mais visiblement, je suis loin d'avoir ton niveau falsam. Première commande que j'essaye de porter, bim, première erreur...

La function JS DynamicTexture n'est pas définie...

Est-ce que babylon.sbi utilise la version 2.5 ou 3.0 de babylon js ?
Est-ce que "l'architecture" de mon bout de code te semble correcte ? ( c'est à première fois que je me lance dans l'écriture d'un module en SB.)

Code : Tout sélectionner

DeclareModule Pxyzl
  Declare   DynamicTexture(Name$, Options$, scene, GenerateMipMaps)
EndDeclareModule

Module Pxyzl
  Procedure DynamicTexture(Name$, Options$, scene, SamplingMode)
    !var dynamictexture_tex = new BABYLON.DynamicTexture(v_name, v_options, v_scene, v_generateMipMaps)
    !return dynamictexture_tex
  EndProcedure
EndModule
Je partage volontiers mes bouts de code, s'ils ne sont pas trop moisi. Et si ça peut t'aider a aller de l'avant avec ce projet, c'est avec plaisir !

Belle journée a tous.

Arbrakan
Dernière modification par Arbrakan le sam. 08/juil./2017 9:35, modifié 1 fois.
Tonio
Messages : 95
Inscription : ven. 07/avr./2017 14:49
Localisation : Sud Est

Re: Babylon.sbi for SpiderBasic

Message par Tonio »

Bonjour Falsam
Possible d'avoir un screenShot , histoire de voir ce que ça donne

merci
Avatar de l’utilisateur
venom
Messages : 3071
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Re: Babylon.sbi for SpiderBasic

Message par venom »

Tonio a écrit :Bonjour Falsam
Possible d'avoir un screenShot , histoire de voir ce que ça donne

merci
Tonio, as tu regarder tout le topic ? Car le premier message de la première page, te renvoi sur le site direct avec plein d'exemple.








@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Babylon.sbi for SpiderBasic

Message par falsam »

Bonjour Arbrakan.
Est-ce que babylon.sbi utilise la version 2.5 ou 3.0 de babylon js ?
Version 3.0 (F12 Mode console pour voir la version utilisée)
La function JS DynamicTexture n'est pas définie...
Si le module est séparé du code utilises tu bien la fonction UseModule Pxyzl ?

Remplaces aussi v_generateMipMaps par v_generatemipmaps

Les variables SpiderBasic utilisées dans un script JS sont systématiquement en minuscules précédées du suffixe v_
Je partage volontiers mes bouts de code, s'ils ne sont pas trop moisi. Et si ça peut t'aider a aller de l'avant avec ce projet, c'est avec plaisir !
Plaisir retourné. Travailler à plusieurs sur Babylon ne me dérange pas bien au contraire.

Ce projet demande à être tester par un grand nombre d'utilisateur et demande aussi des codeurs supplémentaires.

Le projet est documenté module par module sur ce wiki http://falsam.com/sbbjs/wiki/doku.php C'est mon document de travail.
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Babylon.sbi for SpiderBasic

Message par falsam »

Cool Dji a écrit :C'est vraiment top ce que tu proposes falsam.
Merci.
Cool Dji a écrit :Est-ce que Babylon va être intégré officiellement à SpiderBasic ?
Pas que je sache :wink:
Je pense que ce serait possible si les fonctionnalités étaient identiques à celles de PureBasic ce qui n'est pas le cas dans mon module.
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Tonio
Messages : 95
Inscription : ven. 07/avr./2017 14:49
Localisation : Sud Est

Re: Babylon.sbi for SpiderBasic

Message par Tonio »

venom a écrit :
Tonio a écrit :Bonjour Falsam
Possible d'avoir un screenShot , histoire de voir ce que ça donne

merci
Tonio, as tu regarder tout le topic ? Car le premier message de la première page, te renvoi sur le site direct avec plein d'exemple.

@++
j'ai vu mais je m'attendais a beaucoup mieux que ça
Marc56
Messages : 2145
Inscription : sam. 08/févr./2014 15:19

Re: Babylon.sbi for SpiderBasic

Message par Marc56 »

j'ai vu mais je m'attendais a beaucoup mieux que ça
Sympa le commentaire... :roll:
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Babylon.sbi for SpiderBasic

Message par falsam »

Fin de la période Beta, La version 1.0 de Babylon.sbi finale est disponible au téléchargement.

■ Téléchargement du framework et des exemples sur la plateforme GitHub
https://github.com/falsam/BJS/archive/master.zip (57 mo avec les exemples)

■ Aide sur le wiki
http://falsam.com/sbbjs/wiki/doku.php?id=babylon

■ Vous avez eu un aperçu des démos Garden et debug, en voici deux autres.

Un aperçu du GUI
http://falsam.com/sbbjs/gui.html

Cette démo met en oeuvre les fonctionnalités
- CreateDynamicTexture(),
- Button3D(Name.s, x.i, y.i, Width.i, Height.i, Text.s, OnClick, CornerRadius = 8)
- Text3D(Name.s, x.i, y.i, Width.i, Height.i, Text.s, Align = #BJS_Center)
- Slider3D(Name.s, x.i, y.i, Width.i, Height.i, MiniMum.i, Maximum.i, OnChange, BarOffset = 8)

D'autres fonctionnalités sur le wiki : http://falsam.com/sbbjs/wiki/doku.php?i ... ions:gui2d

Scene ScreenShot
http://falsam.com/sbbjs/sceneshoot.html

Cette démo met en ouvre la fonctionnalité
- CreateSceneShoot(Camera, Width, Height, Precision.f=1)

Pour ces deux démos, utiliser la souris pour exercer une rotation de la scène.

J'espére que ça vous plaira. :wink:
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Babylon.sbi for SpiderBasic

Message par falsam »

Version 1.0.2 est disponible. Quelques nouveautés et mise à jour de la plupart des fonctionnalités.

:arrow: Download : https://github.com/falsam/BJS (57 Mo Source + Examples + Data)

Nouvelles fonctionnalités

Divers
ShowAxis(size)
CreateSceneShoot(Camera, Width, Height, Precision.f=1)
SceneDebug()
LoadCubeTexture(FileName.s)
LoadVideoTexture(Names.s, FileName.s)

GUI une texture dynamique
CreateDynamicTexture(Mesh = #False)
AddControl3D(Parent, Child)
HideControl3D(Object, Value = #True)

Rectangle3D(Name.s, x.i, y.i, Width.i = -1, Height.i = -1, Radius = 8, Thickness = 1)
Text3D(Name.s, x.i, y.i, Width.i, Height.i, Text.s, Align = #BJS_Center)
Button3D(Name.s, x.i, y.i, Width.i, Height.i, Text.s, Callback, CornerRadius = 8)
Image3D(Name.s, x.i, y.i, Width.i, Height.i, FileName.s, OnClick = #False)
Slider3D(Name.s, x.i, y.i, Width.i, Height.i, MiniMum.i, Maximum.i, OnChange, BarOffset = 8)
Input3D(Name.s, x.i, y.i, Width.i, Height.i, Text.s, OnLostFocus=#False, OnTextChange=#False, OnGetFocus=#False)
PickerColor3D(Name.s, x.i, y.i, Width.i, Height.i, CallBack)

GetText3D(Object)
SetText3D(Object, Text.s)
SetColor3D(Object, ColorType, Color)
SetTextFont3D(Object, FontFamily.s, FontSize)
SetOpacity3D(Object, Alpha.f)
SetZindex3D(Object, zIndex.i)

GetState3D(Object)
SetState3D(Object, Value)

Text3DLinkToMesh(Mesh, ObjectText, OffSetY.f)

Explication de chacune des fonctinnalités sur le wiki

-Exemples
http://falsam.com/sbbjs/gui.html (Code)
http://falsam.com/sbbjs/sceneshoot.html

Assets Manager
Pratique pour charge des scènes complexes.

UseAssetsManager(ProgressCallback = #False)
AssetsManagerColor(Color)
AssetsManagerAdd(Name.s, FileName.s, CallBackSucces, CallBackError)
AssetsManagerPrompt(Text.s)
AssetsManagerLoad()

-Exemple
http://falsam.com/sbbjs/assetsmanager.html (Code)

L'aide en français http://falsam.com/sbbjs/wiki/doku.php
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
SPH
Messages : 4721
Inscription : mer. 09/nov./2005 9:53

Re: Babylon.sbi for SpiderBasic

Message par SPH »

Bravo, tu fais un boulot de ouf 8)
http://HexaScrabble.com/
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.00 - 64 bits
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Babylon.sbi for SpiderBasic

Message par falsam »

Merci SPH. :wink:
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Babylon.sbi for SpiderBasic

Message par falsam »

Petit code mettant en jeu la reflection d'une texture cube appelé aussi CubeMap.

Image

Code : Tout sélectionner

EnableExplicit
 
IncludeFile "babylon/babylon.sbi"
 
Global Scene, Camera, Mesh, Material
 
Declare LoadGame()
Declare RenderGame()

UseModule BJS
InitEngine(@LoadGame())
 
Procedure LoadGame()    
  Scene = CreateScene()
  If Scene
    CreateCamera("camera", 0, 0, 10, #BJS_ArcRotate)
    
    SkyBox("sky", "data/textures/sky/TropicalSunnyDay")
    CreateLight("point", 0, 200, 2)
        
    Mesh = CreateSphere("sphere cube", 4)
    Material = CreateMaterial("")
    
    SetMaterialColor(Material, #BJS_Diffuse, RGB(0, 0, 0))
    SetMaterialTexture(Material, #BJS_Reflection, LoadCubeTexture("data/textures/sky/TropicalSunnyDay"))
        
    SetMeshMaterial(Mesh, Material)    
        
    RenderLoop(@RenderGame())
  EndIf
EndProcedure
 
Procedure RenderGame()
  RenderWorld() 
EndProcedure
:arrow: Demo : http://falsam.com/sbbjs/reflection.html
Utiliser la souris pour faire tourner la sphere.

:idea: Une texture Cubemap est une collection de six textures carrées séparées qui sont placées sur les faces d'un cube imaginaire. La plupart du temps, ils sont utilisés pour afficher des réflexions sur des objets (Meshes), semblables à la façon dont un Skybox affiche des scènes lointaines en arrière-plan.

Dans cette exemple, La fonction LoadCubeTexture() charge les six textures commençant par TropicalSunnyDay se trouvant dans le dossier data/textures/sky/
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
Cool Dji
Messages : 1126
Inscription : ven. 05/sept./2008 11:42
Localisation : Besançon
Contact :

Re: Babylon.sbi for SpiderBasic

Message par Cool Dji »

Yeah !

j'ai testé sans faire exprès sur IE et ça marche, il me semblait que ça ne passait pas sur IE et du coup je n'utilisais pas Babylon pour mes applis : ça change tout !!
Only PureBasic makes it possible
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Babylon.sbi for SpiderBasic

Message par falsam »

Cool Dji a écrit :j'ai testé sans faire exprès sur IE et ça marche, il me semblait que ça ne passait pas sur IE et du coup je n'utilisais pas Babylon pour mes applis : ça change tout !!
J'avoue que depuis mes tests désastreux avec IE et Edge, je n'ai pas renouvelé cette expérience.

Et effectivement ça fonctionne. Merci d'avoir essayer :wink:
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Répondre