CreateText3D()
Syntaxe
Resultat = CreateText3D(#Texte3D, Texte$ [, Police$, Hauteur, Couleur])Description
Crée un nouveau texte 3D.
Arguments
#Texte3D Le numéro du nouveau texte 3D.
#PB_Any peut être utilisé pour générer automatiquement ce numéro.Texte$ Le texte à afficher.
Il peut être modifié avec Text3DCaption().Police$ (optionnel) Le nom de la police à utiliser.
La police doit être présente dans le chemin Add3DArchive() et doit être définie dans le fichier 'proper-definitions.fontdef'.Hauteur (optionnel) La hauteur de la police à utiliser. Couleur (optionnel) La couleur RGBA à utiliser.
Pour obtenir une couleur valide, utiliser RGBA().
La couleur peut être changée avec Text3DColor().
Valeur de retour
Renvoie une valeur non nulle si le texte a été créé avec succès ou zéro en cas d'erreur.
Si #PB_Any a été utilisé pour le paramètre #Texte3D alors le nouveau numéro généré est renvoyé en cas de succès.
Remarques
Pour être affiché, le texte doit être relié à un LibraryLink "node" "noeud" or an entité.
Exemple
; Initialisation du monde 3D InitEngine3D() InitSprite() InitKeyboard() InitMouse() Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/Textures", #PB_3DArchive_FileSystem) Add3DArchive(#PB_Compiler_Home + "examples/3d/Data/fonts", #PB_3DArchive_FileSystem) Parse3DScripts() ; Ouverture de la fenêtre OpenWindow(0,0,0,1000,1000,"Texte 3D",#PB_Window_ScreenCentered|#PB_Window_SystemMenu) OpenWindowedScreen(WindowID(0),0,0,1000,1000,1,0,0) ; Création du monde 3D CreateSphere(0, 2) CreateMaterial(0, LoadTexture(0, "clouds.jpg")) CreateEntity(0, MeshID(0), MaterialID(0)) CreateCamera(0, 0, 0, 100, 100) MoveCamera(0, 0, 0, 10, #PB_Absolute) ; Création d'un texte 3D CreateText3D(0, FormatDate("%hh:%ii:%ss", Date())) ; Création du texte 3D Text3DColor(0, RGBA(255, 0, 0, 255)) ; Couleur et transparence Text3DAlignment(0, #PB_Text3D_HorizontallyCentered) ; Alignement du texte AttachEntityObject(0, "", Text3DID(0)) ; Il est obligatoire de lier un texte 3D à une entité (ou un noeud) MoveText3D(0, 0.5, 1, 2) ; Position du texte 3D ScaleText3D(0,0.8,0.2,0.5,#PB_Absolute) ; Dimension du texte 3D ; Gestion de la fenêtre, du clavier et de la souris Repeat Repeat Event = WindowEvent() Select Event Case #PB_Event_CloseWindow End EndSelect Until Event = 0 ExamineKeyboard() ExamineMouse() If MouseDeltaX()>0 MoveEntity(noeud,0.5,0,0) ElseIf MouseDeltaX()<0 MoveEntity(noeud,-0.5,0,0) EndIf If MouseDeltaY()>0 MoveEntity(noeud,0,-0.5,0) ElseIf MouseDeltaY()<0 MoveEntity(noeud,0,0.5,0) EndIf If MouseButton(#PB_MouseButton_Left) <>0 End EndIf If MouseButton( #PB_MouseButton_Right) <>0 MoveEntity(noeud,0,0,0,#PB_Absolute) EndIf tiks = MouseWheel() If tiks > 0 MoveEntity(noeud,0,0,1) EndIf If tiks < 0 MoveEntity(noeud,0,0,-1) EndIf If KeyboardPushed(#PB_Key_Escape) quitter + 1 EndIf If KeyboardPushed(#PB_Key_Space) If rotation=1 rotation=0 Else rotation=1 EndIf EndIf ; Barre espace = ON/OFF rotation de l'entité avec le texte 3d attaché à elle If rotation =1 RotateEntity(0, 1, 1, 1, #PB_Relative) EndIf ; Mise à jour de l'heure Text3DCaption(0, FormatDate("%hh:%ii:%ss", Date())) ; Affichage de la scène StartDrawing(WindowOutput(0)) DrawText(0,5,"Souris et Clavier: Espace et Molette souris") DrawText(0,30,".: Echap ou clic gauche pour quitter :.") StopDrawing() RenderWorld() FlipBuffers() Until KeyboardPushed(#PB_Key_Escape) Or Quitter = 1 End
Voir aussi
FreeText3D()
OS Supportés
Tous