Skip to main content

Python Package made by Mhadhbi Issam .

Project description

DefoldSdk

♠ Install

pip install DefoldSdk

♠ Getting started

♠♠ Example createing new material and assign it to model :

from DefoldSdk import Project


x = Project()
x.new(name = "defoldproject" , path = ".")

modelMaterial= x.newMaterial(name = "pbr" , tags = ['model'])
modelMaterial.setvertex_constant(name='mtx_worldview',typ='Worldview')
modelMaterial.setvertex_constant(name='mtx_view',typ='View')
modelMaterial.setvertex_constant(name='mtx_proj',typ='Projection')
modelMaterial.setvertex_constant(name='mtx_normal',typ='Normal')
modelMaterial.setvertex_constant(name='light',typ='User')
modelMaterial.setfragment_constant(name = 'tint' , typ='User')
modelMaterial.setTexture(name='tex0')
modelMaterial.setvertex_space('local')
modelMaterial.vp = ''' 
    attribute highp vec4 position;
    attribute mediump vec2 texcoord0;
    attribute mediump vec3 normal;

    uniform mediump mat4 mtx_worldview;
    uniform mediump mat4 mtx_view;
    uniform mediump mat4 mtx_proj;
    uniform mediump mat4 mtx_normal;
    uniform mediump vec4 light;

    varying highp vec4 var_position;
    varying mediump vec3 var_normal;
    varying mediump vec2 var_texcoord0;
    varying mediump vec4 var_light;

    void main()
    {
        vec4 p = mtx_worldview * vec4(position.xyz, 1.0);
        var_light = mtx_view * vec4(light.xyz, 1.0);
        var_position = p;
        var_texcoord0 = texcoord0;
        var_normal = normalize((mtx_normal * vec4(normal, 0.0)).xyz);
        gl_Position = mtx_proj * p;
    }
    '''
modelMaterial.fp = ''' 
    varying highp vec4 var_position;
    varying mediump vec3 var_normal;
    varying mediump vec2 var_texcoord0;
    varying mediump vec4 var_light;

    uniform lowp sampler2D tex0;
    uniform lowp vec4 tint;

    void main()
    {
        // Pre-multiply alpha since all runtime textures already are
        vec4 tint_pm = vec4(tint.xyz * tint.w, tint.w);
        vec4 color = texture2D(tex0, var_texcoord0.xy) ;

        // Diffuse light calculations
        vec3 ambient_light = vec3(0.2);
        vec3 diff_light = vec3(normalize(var_light.xyz - var_position.xyz));
        diff_light = max(dot(var_normal,diff_light), 0.0) + ambient_light;
        diff_light = clamp(diff_light, 0.0, 1.0);

        gl_FragColor = vec4(color.rgb*diff_light,1.0);
    }
    '''

x.update()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

defoldsdk-1.2.9.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

defoldsdk-1.2.9-py3-none-any.whl (12.6 kB view details)

Uploaded Python 3

File details

Details for the file defoldsdk-1.2.9.tar.gz.

File metadata

  • Download URL: defoldsdk-1.2.9.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for defoldsdk-1.2.9.tar.gz
Algorithm Hash digest
SHA256 6bc745cdb0c25157e8ec4a6fc04664c6ab418c2b4ff0823c7b7eb96b396d509d
MD5 8b7e7cfbb5bef087b20b123aac6cda3c
BLAKE2b-256 6636c76a072056e770c24b8f915dc60acf3f250a69d62f0560afc0a9938db51e

See more details on using hashes here.

File details

Details for the file defoldsdk-1.2.9-py3-none-any.whl.

File metadata

  • Download URL: defoldsdk-1.2.9-py3-none-any.whl
  • Upload date:
  • Size: 12.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for defoldsdk-1.2.9-py3-none-any.whl
Algorithm Hash digest
SHA256 0108fda341f6eb162c41c0942343685f4d8a31600d15701cb183afd8faf9f14b
MD5 c1b1a4d2f79e9f767ea081b5a8b20db1
BLAKE2b-256 0bfcd0d63f9c207ee02cacc9609ac464bb76a468c82ba46dd26637df5f2f9a29

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page