Giter Site home page Giter Site logo

kivent's Introduction

KivEnt 3.0

KivEnt is a framework for building performant, dynamic real-time scenes in Kivy for Python2 and Python3. At the moment it is 2d oriented. The only dependency for the kivent_core module is Kivy itself. Additional modules may have other requirements, such as kivent_cymunk module being based on Chipmunk2d and its cymunk wrapper.

An entity-component architecture is used to control game object state and the logic of processing the game objects. This means that your game objects will be made up of collections of independent components that stricly hold data; each component corresponds to a GameSystem that will perform all data processing on the components, in the update loop each frame, and as a result of user interaction or other programmaticaly generated events. All memory for the built-in components is allocated statically: if you would like learn more about memory management, read here.

KivEnt is built with a modular architecture and designed to have both a python api and a c-level cython api that allows more performant access to your game data. This makes it suitable for quickly prototyping a mechanic completely in python, and relatively trivial to then deeply cythonize that GameSystem if you find it to be performance sensitive. This process has already been done for the built-in components meaning they are ready for you to build new, performant game systems on top of them.

Project Website:

http://www.kivent.org

Mailing List:

https://groups.google.com/forum/#!forum/kivent

Documentation:

http://www.kivent.org/docs

Getting Started

Read the introduction on the github wiki.

Dependencies

KivEnt is split into modules, the core module, 'kivent_core', is dependent only on Kivy.

Other modules may have other dependecies, listed here:

kivent_core:

kivent_cymunk:

kivent_particles

kivent_maps

kivent_projectiles

Installation

first install all dependencies then:

cd .../KivEnt/modules/core
python setup.py build_ext install

or

cd .../KivEnt/modules/cymunk
python setup.py build_ext install

If you want to install into a system python on something like ubuntu you may need to:

sudo python setup.py build_ext install

If you would like to instead build the modules in place and use PYTHONPATH to find them:

cd .../KivEnt/modules/core
python setup.py build_ext --inplace
export PYTHONPATH=/path/to/KivEnt/modules/core:$PYTHONPATH 

or:

cd .../KivEnt/modules/cymunk
python setup.py build_ext --inplace
export PYTHONPATH=/path/to/KivEnt/modules/cymunk:$PYTHONPATH 

Windows Kivy Portable Package Installation:

Open the kivy-2.7.bat (kivy-3.4.bat if using the py3 portable package) command console and type:

pip install https://github.com/tito/cymunk/archive/master.zip

Now either download and extract or git clone the KivEnt source:

git clone https://github.com/Kovak/KivEnt.git

Assuming you have KivEnt in the root folder for the portable package, in the kivy-2.7.bat console:

cd KivEnt/modules/core
python setup.py build_ext install
#check core install
cd ../../examples/2_basic_app
python main.py
cd ../../modules/cymunk
python setup.py build_ext install
#check that cymunk install
cd ../../examples/6_controlling_the_viewing_area
python main.py

Tested On:

Tested with master branch. Python 2.7 and Python 3.4.

Tested on Android, Ubuntu, Windows, OSX; iOS coming soon!

Support

If you need assistance, you can ask for help on our mailing list:

We also have an IRC channel:

  • Server : irc.freenode.net
  • Port : 6667, 6697 (SSL only)
  • Channel : #kivy

Contributing

We love pull requests and discussing novel ideas. Check out our contribution guide and feel free to improve KivEnt.

The following mailing list and IRC channel are used exclusively for discussions about developing the Kivy framework and its sister projects:

IRC channel:

  • Server : irc.freenode.net
  • Port : 6667, 6697 (SSL only)
  • Channel : #kivy-dev

License

KivEnt aims to be a full MIT licensed project. At the moment every module is MIT, however this could change in the future. To be sure of the licensing for a module refer to the LICENSE file inside that module.

kivent's People

Contributors

chozabu avatar dessant avatar dummerbd avatar hackalog avatar inclement avatar keyweeusr avatar kived avatar kovak avatar labuzm avatar llfkj avatar maho avatar saqib1707 avatar sleepprogger avatar squarrel avatar tim-win avatar tshirtman avatar udiboy1209 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kivent's Issues

GameView Rotation

Hi, I was told to open an issue here about this:

There is no way to rotate the camera / GameView right now.
Pretty self explainatory.. I just want to turn the camera without turning the whole world ;)

Thanks!

Possible problem with cymunk?

As stated in the email when I make cumunk I get the following error message:
py.test tests
make: py.test: Command not found
make: *** [tests] Error 127

I can't help but thing the required C/cython files were not properly installed! Any ways around this?

GameView scaling boundaries

GameView doesn't respect map size, it's possible to zoom out beyond map boundaries and this leads to strange flickering behavior when do_scroll_lock is set to True. How about adding something like do_zoom_lock or renaming do_scroll_lock and locking both zoom and scroll?

Update KivEnt Examples

Hello!
Thanks a lot for this great engine.

As for being a beginner in developing games in Kivy, I am currently trying to make my way through the KivEnt tutorial series. Unfortunately, due to the active development, the tutorials are not working with the current version.

Would it be possible to update some of the examples?

I would love to it myself, but at the moment I lack the experience to be helpful here.

Thanks!

kivent_cython

first of all thank you about this project it's very usefull to me :)
i have a question about porting this code to android and i wonder to know how can i install kivent_cython on android ?
when i use my ubuntu compile kivent_cython it gt this error :
/kivent_cython.so is not a valid ELF object
i know it is because arm architecture but i dont know how can i make this project run on android
and then i reversed the quadtree and particlesystem into python to make them work on android

Kivent on Raspberry Pi 2

Hello, I am trying to use kivent on the Raspberry Pi 2 and I get an error about "undefined symbol: glVertexAttribPointer" when I try to run the examples.

I did get the kivy examples to work. Full log follows. Thanks for your time.

pi@raspberrypi ~/kiventproject/kivent/examples/1_empty_kivent_app $ python main.py 
[INFO   ] [Logger      ] Record log in /home/pi/.kivy/logs/kivy_15-09-25_21.txt
[INFO   ] [Kivy        ] v1.9.1-dev
[INFO   ] [Python      ] v2.7.3 (default, Mar 18 2014, 05:13:23) 
[GCC 4.6.3]
[INFO   ] [Factory     ] 177 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_gif, img_pygame, img_pil (img_ffpyplayer ignored)
[INFO   ] [Window      ] Provider: egl_rpi
[INFO   ] [GL          ] OpenGL version <OpenGL ES 2.0>
[INFO   ] [GL          ] OpenGL vendor <Broadcom>
[INFO   ] [GL          ] OpenGL renderer <VideoCore IV HW>
[INFO   ] [GL          ] OpenGL parsed version: 2, 0
[INFO   ] [GL          ] Shading version <OpenGL ES GLSL ES 1.00>
[INFO   ] [GL          ] Texture max size <2048>
[INFO   ] [GL          ] Texture max units <8>
[INFO   ] [Shader      ] fragment shader: <Compiled>
[INFO   ] [Shader      ] vertex shader: <Compiled>
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not docked
 Traceback (most recent call last):
   File "main.py", line 4, in <module>
     import kivent_core
   File "/usr/local/lib/python2.7/dist-packages/kivent_core/__init__.py", line 3, in <module>
     from . import rendering
   File "/usr/local/lib/python2.7/dist-packages/kivent_core/rendering/__init__.py", line 1, in <module>
     from . import vertex_format
 ImportError: /usr/local/lib/python2.7/dist-packages/kivent_core/rendering/vertex_format.so: undefined symbol: glVertexAttribPointer

Cython compilation error when installing Kivent on Ubuntu 15.04

So I thought it was about time getting back into Python game development and tried installing Kivent on a fresh Ubuntu install, but it fails with cython errors:

Cythonizing kivent_core/rendering/cmesh.pyx

Error compiling Cython file:

...
self._batch = batch

def __dealloc__(self):
    self._batch.clear_frames()

cdef void apply(self):
    ^

kivent_core/rendering/cmesh.pyx:19:9: Signature not compatible with previous declaration

Error compiling Cython file:

...
cdef str group
cdef InstructionGroup parent
cdef object weakref
cdef object __proxy_ref

cdef int apply(self) except -1
             ^

/usr/local/lib/python2.7/dist-packages/kivy/graphics/instructions.pxd:29:18: Previous declaration is here
Traceback (most recent call last):
File "setup.py", line 101, in
extensions, core_modules)
File "setup.py", line 84, in build_extensions_for_modules_cython
return cythonize(ext_list)
File "/home/oddbit/.local/lib/python2.7/site-packages/Cython/Build/Dependencies.py", line 865, in cythonize
cythonize_one(*args[1:])
File "/home/oddbit/.local/lib/python2.7/site-packages/Cython/Build/Dependencies.py", line 985, in cythonize_one
raise CompileError(None, pyx_file)
Cython.Compiler.Errors.CompileError: kivent_core/rendering/cmesh.pyx

Now, kivy itself works just fine (except it cannot find a clipboard provider, but that's a minor issue), and installing cymunk seemes to have worked (with a lot of warnings, but from what I remember from the last time when I got kivent to work, that's normal)

I've tried using both cython 0.21 and 0.22, same result. Any help would be greatly appreciated cause I really want to see some games made with kivy/kivent.

compilation error

Error compiling Cython file:

...

cython: profile=True

from kivy.graphics.vertex cimport VertexFormat, vertex_attr_t
from kivy.graphics.instructions cimport VertexInstruction, getActiveContext
from kivy.graphics.vbo cimport VBO, VertexBatch

^

kivent_core/cmesh.pyx:4:36: Name 'VertexBatch' not declared in module 'kivy.graphics.vbo'

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat, vertex_attr_t
from kivy.graphics.instructions cimport VertexInstruction, getActiveContext
from kivy.graphics.vbo cimport VBO, VertexBatch
from kivy.logger import Logger
from kivy.graphics.c_opengl cimport *
from kivy.graphics.context cimport Context, get_context

^

kivent_core/cmesh.pyx:7:0: 'kivy/graphics/context.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat, vertex_attr_t
from kivy.graphics.instructions cimport VertexInstruction, getActiveContext
from kivy.graphics.vbo cimport VBO, VertexBatch
from kivy.logger import Logger
from kivy.graphics.c_opengl cimport *
from kivy.graphics.context cimport Context, get_context

^

kivent_core/cmesh.pyx:7:0: 'Context.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat, vertex_attr_t
from kivy.graphics.instructions cimport VertexInstruction, getActiveContext
from kivy.graphics.vbo cimport VBO, VertexBatch
from kivy.logger import Logger
from kivy.graphics.c_opengl cimport *
from kivy.graphics.context cimport Context, get_context

^

kivent_core/cmesh.pyx:7:35: Name 'Context' not declared in module 'kivy.graphics.context'

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat, vertex_attr_t
from kivy.graphics.instructions cimport VertexInstruction, getActiveContext
from kivy.graphics.vbo cimport VBO, VertexBatch
from kivy.logger import Logger
from kivy.graphics.c_opengl cimport *
from kivy.graphics.context cimport Context, get_context

^

kivent_core/cmesh.pyx:7:0: 'get_context.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat, vertex_attr_t
from kivy.graphics.instructions cimport VertexInstruction, getActiveContext
from kivy.graphics.vbo cimport VBO, VertexBatch
from kivy.logger import Logger
from kivy.graphics.c_opengl cimport *
from kivy.graphics.context cimport Context, get_context

^

kivent_core/cmesh.pyx:7:44: Name 'get_context' not declared in module 'kivy.graphics.context'

Error compiling Cython file:

...
from kivy.graphics.instructions cimport VertexInstruction, getActiveContext
from kivy.graphics.vbo cimport VBO, VertexBatch
from kivy.logger import Logger
from kivy.graphics.c_opengl cimport *
from kivy.graphics.context cimport Context, get_context
from kivy.graphics.shader cimport Shader

^

kivent_core/cmesh.pyx:8:0: 'kivy/graphics/shader.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.instructions cimport VertexInstruction, getActiveContext
from kivy.graphics.vbo cimport VBO, VertexBatch
from kivy.logger import Logger
from kivy.graphics.c_opengl cimport *
from kivy.graphics.context cimport Context, get_context
from kivy.graphics.shader cimport Shader

^

kivent_core/cmesh.pyx:8:0: 'Shader.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.instructions cimport VertexInstruction, getActiveContext
from kivy.graphics.vbo cimport VBO, VertexBatch
from kivy.logger import Logger
from kivy.graphics.c_opengl cimport *
from kivy.graphics.context cimport Context, get_context
from kivy.graphics.shader cimport Shader

^

kivent_core/cmesh.pyx:8:34: Name 'Shader' not declared in module 'kivy.graphics.shader'

Error compiling Cython file:

...
from kivy.graphics.vbo cimport VBO, VertexBatch
from kivy.logger import Logger
from kivy.graphics.c_opengl cimport *
from kivy.graphics.context cimport Context, get_context
from kivy.graphics.shader cimport Shader
from kivy.graphics.vbo cimport default_vertex

^

kivent_core/cmesh.pyx:9:0: 'default_vertex.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.vbo cimport VBO, VertexBatch
from kivy.logger import Logger
from kivy.graphics.c_opengl cimport *
from kivy.graphics.context cimport Context, get_context
from kivy.graphics.shader cimport Shader
from kivy.graphics.vbo cimport default_vertex

^

kivent_core/cmesh.pyx:9:31: Name 'default_vertex' not declared in module 'kivy.graphics.vbo'

Error compiling Cython file:

...

return '<VertexBatch at %x id=%r vertex=%d size=%d mode=%s vbo=%x>' % (

id(self), self.id if self.flags & V_HAVEID else None,

self.elements.count(), self.elements.size(), self.get_mode(),

id(self.vbo))

cdef class CMesh(VertexInstruction):

^

kivent_core/cmesh.pyx:433:5: 'VertexInstruction' is not declared

Error compiling Cython file:

...

def __dealloc__(self):
    self._obatch.clear_data()


cdef void build(self):
    ^

kivent_core/cmesh.pyx:449:9: C method 'build' not previously declared in definition part of extension type

Error compiling Cython file:

...
cdef long vcount = self.vcount
cdef vsize = batch.vbo.vertex_format.vsize
cdef long icount = self.icount
batch.set_data(vertices, (vcount / vsize), indices, icount)

cdef void apply(self):
    ^

kivent_core/cmesh.pyx:460:9: C method 'apply' not previously declared in definition part of extension type

Error compiling Cython file:

...
self._obatch.clear_data()

cdef void build(self):
    cdef float* vertices
    cdef VertexBatch batch = self._obatch
        ^

kivent_core/cmesh.pyx:451:13: 'VertexBatch' is not a type identifier

Error compiling Cython file:

...

cdef class CMesh(VertexInstruction):

def __init__(self, **kwargs):
    VertexInstruction.__init__(self, **kwargs)
                    ^

kivent_core/cmesh.pyx:437:25: undeclared name not builtin: VertexInstruction

Error compiling Cython file:

...

def __init__(self, **kwargs):
    VertexInstruction.__init__(self, **kwargs)
    fmt = kwargs.get('fmt')
    if fmt is not None:
        self.vertex_format = VertexFormat(*fmt)
                                        ^

kivent_core/cmesh.pyx:440:45: undeclared name not builtin: VertexFormat

Error compiling Cython file:

...
def init(self, *_kwargs):
VertexInstruction.init(self, *_kwargs)
fmt = kwargs.get('fmt')
if fmt is not None:
self.vertex_format = VertexFormat(*fmt)
self._obatch = VertexBatch(vbo=VBO(self.vertex_format))

^

kivent_core/cmesh.pyx:441:38: undeclared name not builtin: VertexBatch

Error compiling Cython file:

...
vertices = <float >self._vertices
indices = <unsigned short
>self._indices
cdef long vcount = self.vcount
cdef vsize = batch.vbo.vertex_format.vsize
cdef long icount = self.icount
batch.set_data(vertices, (vcount / vsize), indices, icount)

^

kivent_core/cmesh.pyx:458:31: Cannot convert 'float *' to Python object

Error compiling Cython file:

...
vertices = <float >self._vertices
indices = <unsigned short
>self._indices
cdef long vcount = self.vcount
cdef vsize = batch.vbo.vertex_format.vsize
cdef long icount = self.icount
batch.set_data(vertices, (vcount / vsize), indices, icount)

^

kivent_core/cmesh.pyx:458:63: Cannot convert 'unsigned short _' to Python object
Traceback (most recent call last):
File "setup.py", line 71, in
extensions, core_modules)
File "setup.py", line 54, in build_extensions_for_modules_cython
return cythonize(ext_list)
File "/usr/local/lib/python2.7/dist-packages/Cython/Build/Dependencies.py", line 840, in cythonize
cythonize_one(_args[1:])
File "/usr/local/lib/python2.7/dist-packages/Cython/Build/Dependencies.py", line 959, in cythonize_one
raise CompileError(None, pyx_file)
Cython.Compiler.Errors.CompileError: kivent_core/cmesh.pyx

modules version missing

If kivent modules are installed rather that built in place, pip reports invalid version number. Do we want to change it? the 0.0.0 version is pretty misleading.

iOS attention should be >= Android

Kivy-iOS is the only toolchain NOT supporting python 3, which is stopping Kivy from being a python 3 complete framework. I am new to Kivy, as well as Github but immediately fell in love with Kivy and the way it organizes it's sister projects with such modularity.
From what I have seen Kivy has had slow release cycles, which is acceptable but only if the entire project benefits from a major release or rather have shorter release cycles that update bits of the framework at a time.

As a new mobile developer, I am ecstatic to use something like Kivy and take advantage of Python and it's ecosystem for cross platform development. But I noticed that in the mobile space, Android & Pyjnius are given way more attention than iOS & Pyobjus. This is very bad as the majority of the developer community worldwide prefers to release apps for iOS first before Android; better from a business point of view. Whether this is because of a lack of interest in iOS or a lack of devices to test, the issues must be made clearer and the core Kivy developers must ask for specific community help if needed.

Conclusion: @tito, @akshayaurora, @Kovak, @tshirtman, @dessant, @kived, @inclement, @Zen-CODE, and others.
Far more attention should be paid to iOS as a whole: Kivy-iOS [Python 3], Pyobjus, Plyer (iOS) and updated/more Kivy-iOS recipes. If for whatever reason (eg. No interest, No devices, etc.), Kivy core developers have trouble, they should explicitly list the kind of help wanted from the community.

I think it would be a good idea if people pledged their willingness to help.@Allactaga

+1 to help Kivy-iOS

Developing installation manual

Hi All

I've been viewing some feedback and people have be struggling to install kivent. I want to make fellow developers lives a lot easier by developing a installation manual! If you have installed kivent sucessfuly please tell us how you did it and the code used and open up a issue on the following repository Andy45/Kivent-Installation-manual. When the programme has sucessfuly installed on my own PC, I'll attach the finshed installationn manual to Kovac for assesment!

installing kivent within portable kivy

Installation fails when following the installation steps for the portable kivy:

cd KivEnt/modules/core
python setup.py build_ext install

fails with:
[INFO ] [Logger ] Record log in C:\Users\gantl.kivy\logs\kivy_15-11-14_22.txt
[INFO ] [Kivy ] v1.9.0
[INFO ] [Python ] v3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06) [MSC v.1600 32 bit (Intel)]
Traceback (most recent call last):
File "setup.py", line 104, in
extensions, core_modules)
File "setup.py", line 82, in build_extensions_for_modules_cython
include_dirs=kivy.get_includes())
AttributeError: 'module' object has no attribute 'get_includes'

kivy/master build error due to Cython 0.22 commit

Building with kivy/master kivy/kivy@59b768c
Cython 0.22

KivEnt broke with this kivy commit:
kivy/kivy@124fe6c

Compiling kivent_core/rendering/cmesh.pyx because it changed.
Cythonizing kivent_core/rendering/cmesh.pyx

Error compiling Cython file:
------------------------------------------------------------
...
        self._batch = batch

    def __dealloc__(self):
        self._batch.clear_frames()

    cdef void apply(self):
        ^
------------------------------------------------------------

kivent_core/rendering/cmesh.pyx:19:9: Signature not compatible with previous declaration

Error compiling Cython file:
------------------------------------------------------------
...
    cdef str group
    cdef InstructionGroup parent
    cdef object __weakref__
    cdef object __proxy_ref

    cdef int apply(self) except -1
                 ^
------------------------------------------------------------

/home/awhite/Code/python/kivy/kivy-fork/kivy/graphics/instructions.pxd:29:18: Previous declaration is here

I changed the method signature and was able to build and run the examples. Not sure if it should return an int now...

diff --git a/modules/core/kivent_core/rendering/cmesh.pyx b/modules/core/kivent_core/rendering/cmesh.pyx
index 478c284..40575ee 100644
--- a/modules/core/kivent_core/rendering/cmesh.pyx
+++ b/modules/core/kivent_core/rendering/cmesh.pyx
@@ -16,7 +16,7 @@ cdef class CMesh(VertexInstruction):
     def __dealloc__(self):
         self._batch.clear_frames()

-    cdef void apply(self):
+    cdef int apply(self) except -1:
         if self.flags & GI_NEEDS_UPDATE:
             self.flag_update_done()
         self._batch.draw_frame()

Resizing Crashes on Mac OS X

When attempting to resize the window (on Mac OS X Yosemite) of the examples provided (except for Example 1).

Example 1 (resize works):

$ kivy main.py 
[INFO   ] [Logger      ] Record log in /Applications/Kivy.app/Contents/Resources/.kivy/logs/kivy_15-11-03_19.txt
[INFO   ] [Kivy        ] v1.9.1-dev
[INFO   ] [Python      ] v2.7.10 (default, Jul 14 2015, 19:46:27) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)]
[INFO   ] [Factory     ] 177 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_imageio, img_dds, img_gif, img_pygame (img_pil, img_ffpyplayer ignored)
[INFO   ] [Window      ] Provider: pygame
[INFO   ] [GL          ] OpenGL version <2.1 INTEL-10.6.33>
[INFO   ] [GL          ] OpenGL vendor <Intel>
[INFO   ] [GL          ] OpenGL renderer <Intel(R) Iris(TM) Graphics 6100>
[INFO   ] [GL          ] OpenGL parsed version: 2, 1
[INFO   ] [GL          ] Shading version <1.20>
[INFO   ] [GL          ] Texture max size <16384>
[INFO   ] [GL          ] Texture max units <16>
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not docked
[INFO   ] [OSC         ] using <multiprocessing> for socket
[INFO   ] [KivEnt      ] Vertex Format: vertex_format_4f registered. Size per vertex is: 16. Format is [('pos', 2, 'float', 0, False), ('uvs', 2, 'float', 8, False)].
[INFO   ] [KivEnt      ] Vertex Format: vertex_format_7f registered. Size per vertex is: 28. Format is [('pos', 2, 'float', 0, False), ('uvs', 2, 'float', 8, False), ('rot', 1, 'float', 16, False), ('center', 2, 'float', 20, False)].
[INFO   ] [KivEnt      ] Vertex Format: vertex_format_4f4ub registered. Size per vertex is: 20. Format is [('pos', 2, 'float', 0, False), ('uvs', 2, 'float', 8, False), ('vColor', 4, 'ubyte', 16, True)].
[INFO   ] [KivEnt      ] Model Manager reserved space for vertex format: vertex_format_4f. 75 KiB was reserved for vertices, fitting a total of 4800. 25 KiB was reserved for indices fitting a total of 12800.
[INFO   ] [KivEnt      ] Model Manager reserved space for vertex format: vertex_format_7f. 75 KiB was reserved for vertices, fitting a total of 2742. 25 KiB was reserved for indices fitting a total of 12800.
[INFO   ] [KivEnt      ] Model Manager reserved space for vertex format: vertex_format_4f4ub. 75 KiB was reserved for vertices, fitting a total of 3840. 25 KiB was reserved for indices fitting a total of 12800.
[INFO   ] [KivEnt      ] We will need 684 KiB for game, we have 102400 KiB
[INFO   ] [Base        ] Start application main loop
[INFO   ] [Context     ] Reloading graphics data...
[INFO   ] [Context     ] Reloading done in 0.0392s
[INFO   ] [Context     ] Reloading graphics data...
[INFO   ] [Context     ] Reloading done in 0.0252s
[INFO   ] [Context     ] Reloading graphics data...
[INFO   ] [Context     ] Reloading done in 0.0229s
[INFO   ] [Base        ] Leaving application in progress...

Example 2 (resize doesn't work):

$ kivy main.py 
[INFO   ] [Logger      ] Record log in /Applications/Kivy.app/Contents/Resources/.kivy/logs/kivy_15-11-03_20.txt
[INFO   ] [Kivy        ] v1.9.1-dev
[INFO   ] [Python      ] v2.7.10 (default, Jul 14 2015, 19:46:27) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)]
[INFO   ] [Factory     ] 177 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_imageio, img_dds, img_gif, img_pygame (img_pil, img_ffpyplayer ignored)
[INFO   ] [Window      ] Provider: pygame
[INFO   ] [GL          ] OpenGL version <2.1 INTEL-10.6.33>
[INFO   ] [GL          ] OpenGL vendor <Intel>
[INFO   ] [GL          ] OpenGL renderer <Intel(R) Iris(TM) Graphics 6100>
[INFO   ] [GL          ] OpenGL parsed version: 2, 1
[INFO   ] [GL          ] Shading version <1.20>
[INFO   ] [GL          ] Texture max size <16384>
[INFO   ] [GL          ] Texture max units <16>
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not docked
[INFO   ] [OSC         ] using <multiprocessing> for socket
[INFO   ] [Text        ] Provider: pygame
[INFO   ] [Shader      ] Read </Users/josepha/Downloads/kivy-kivent-ca709d3/examples/assets/glsl/positionshader.glsl>
[ERROR  ] [GameSystem  ] System_id: renderer not attached retrying in 1 sec. If you see this error once or twice, we are probably just waiting on the KV file to load. If you see it a whole bunch something is probably wrong. Make sure all systems are setup properly.
[INFO   ] [Base        ] Start application main loop
[INFO   ] [GL          ] NPOT texture support is available
[INFO   ] [KivEnt      ] Vertex Format: vertex_format_4f registered. Size per vertex is: 16. Format is [('pos', 2, 'float', 0, False), ('uvs', 2, 'float', 8, False)].
[INFO   ] [KivEnt      ] Vertex Format: vertex_format_7f registered. Size per vertex is: 28. Format is [('pos', 2, 'float', 0, False), ('uvs', 2, 'float', 8, False), ('rot', 1, 'float', 16, False), ('center', 2, 'float', 20, False)].
[INFO   ] [KivEnt      ] Vertex Format: vertex_format_4f4ub registered. Size per vertex is: 20. Format is [('pos', 2, 'float', 0, False), ('uvs', 2, 'float', 8, False), ('vColor', 4, 'ubyte', 16, True)].
[INFO   ] [KivEnt      ] position allocated 128 KiB
[INFO   ] [KivEnt      ] Batches for canvas: <kivy.graphics.instructions.RenderContext object at 0x111dc51d0> will have 8192 verts and 65536 indices.VBO will be 128 in KiB per frame with 20 total vbos, an estimated 2048 enities fit in each batch with 4 verts per entity
[INFO   ] [KivEnt      ] renderer allocated 6292 KiB
[INFO   ] [KivEnt      ] Model Manager reserved space for vertex format: vertex_format_4f. 75 KiB was reserved for vertices, fitting a total of 4800. 25 KiB was reserved for indices fitting a total of 12800.
[INFO   ] [KivEnt      ] Model Manager reserved space for vertex format: vertex_format_7f. 75 KiB was reserved for vertices, fitting a total of 2742. 25 KiB was reserved for indices fitting a total of 12800.
[INFO   ] [KivEnt      ] Model Manager reserved space for vertex format: vertex_format_4f4ub. 75 KiB was reserved for vertices, fitting a total of 3840. 25 KiB was reserved for indices fitting a total of 12800.
[INFO   ] [KivEnt      ] We will need 6848 KiB for game, we have 102400 KiB
[INFO   ] [Context     ] Reloading graphics data...
[INFO   ] [Context     ] Reloading done in 0.0266s
[ERROR  ] OpenGL Error (Renderer._set_blend_func-glBlendFunc) 1282 / 502
[ERROR  ] OpenGL Error (FixedVBO.update_buffer-glBufferSubData) 1281 / 501
[ERROR  ] OpenGL Error (FixedVBO.update_buffer-glBufferSubData) 1281 / 501
Fatal Python error: (pygame parachute) Segmentation Fault
Abort trap: 6

Is there any other information you need?

Examples 2-7 only work when executed from their own directory

Examples 2-7 give the error:
IOError: [Errno 2] No such file or directory: '../assets/background_objects.atlas'
when you try to run them from outside their own directory.

The relative paths should be changed to use:
os.path.join(os.path.dirname(file), '..', 'assets', 'background_objects.atlas')
to solve this issue.

Problem with Kivy Portable Package Installation on Windows

When trying to run python setup.py build_ext install according to the instructions in the readme I get the following error message: AttributeError: 'module' object has no attribute 'get_includes'.

I'm quite new to Python and can't really figure out how to solve this problem. Would really appreciate your help!

Oh, and I'm using Python & Kivy 3.4 on Windows 10.

another flickering

I'm not sure if it's related to #76 or not, and I wanted to avoid making too much mess there, so I open another issue.

See movie at url http://files.pagema.net/case2.ogv , flickering (or rather showing random previous drawings) starts from second=5.

Logs from that run: http://files.pagema.net/kivy_15-07-30_54.txt (BTW - it's stupid that I cannot attach .txt file to github bugtracker)

Kivent used to run: https://github.com/mahomahomaho/KivEnt/tree/find_flickering - it's your last change + my Logger.debug in various places,

Usecase is in:

   hg clone -r example2.1 http://bitbucket.org/maho/tmpkh2

Note, that it's different order of systems in .kv files, comparing to previous examples.

As in #76 I had rough idea what is wrong, now I have none. I hope you will find out :)

Example appication feedback

I have tried Kivents sample appication and it looks very good. The shooting game and the collision detection are rather impresive especaly when the aterids split when shot at!

However during the test I came up with the following errors:

Can freaze at unpridictable times:

The log demonstating this error is shown below:
Running: /home/andrew/KivEnt/sample_application/main.py (Tue Aug 19 21:46:40 2014)

[INFO ] [Logger ] Record log in /home/andrew/.kivy/logs/kivy_14-08-19_43.txt
[INFO ] Kivy v1.8.1-dev

[INFO ] [Python ] v2.7.5+ (default, Feb 27 2014, 19:37:08)
[GCC 4.8.1]

[INFO ] [Factory ] 169 symbols loaded

[INFO ] [Image ] Providers: img_tex, img_dds, img_pygame, img_pil, img_gif (img_ffpyplayer ignored)

[INFO ] [Window ] Provider: pygame(['window_egl_rpi'] ignored)

[INFO ] [GL ] OpenGL version <3.0 Mesa 9.2.1>
[INFO ] [GL ] OpenGL vendor
[INFO ] [GL ] OpenGL renderer <Mesa DRI Intel(R) Ivybridge Mobile >
[INFO ] [GL ] OpenGL parsed version: 3, 0
[INFO ] [GL ] Shading version <1.30>
[INFO ] [GL ] Texture max size <8192>
[INFO ] [GL ] Texture max units <16>
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [Text ] Provider: pygame

[INFO ] [AudioGstplayer] Using Gstreamer 1.2.0.0

[INFO ] [Audio ] Providers: audio_gstplayer, audio_pygame (audio_ffpyplayer, audio_sdl ignored)

[INFO ] [Shader ] Read <assets/shaders/positionrotatecolorscaleshader.glsl>

[INFO ] [Shader ] Read <assets/shaders/positionrotatecolorshader.glsl>

[INFO ] [Shader ] Read <assets/shaders/positionrotateshader.glsl>
[INFO ] [Shader ] Read <assets/shaders/positionshader.glsl>
[INFO ] [Shader ] Read <assets/shaders/positionshader.glsl>
[INFO ] [OSC ] using for socket

[INFO ] [ProbeSysfs ] device match: /dev/input/event11
[INFO ] [MTD ] Read event from </dev/input/event11>
[INFO ] [Base ] Start application main loop
[INFO ] [GL ] NPOT texture support is available
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 808, in *bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 761, in run
self.__target(_self.__args, _self.__kwargs)
File "/usr/local/lib/python2.7/dist-packages/kivy/input/providers/mtdev.py", line 193, in _thread_run
_device = Device(_fn)
File "/usr/local/lib/python2.7/dist-packages/kivy/lib/mtdev.py", line 131, in __init

self._fd = os.open(filename, os.O_NONBLOCK | os.O_RDONLY)
OSError: [Errno 13] Permission denied: '/dev/input/event11'

ship_dict {'num_weapons': 2, 'total_bullet_ammo': 200, 'color': 'green', 'engine_offset': 65, 'price': 1000, 'accel': 15000, 'height': 96, 'explosion_effect': 'assets/pexfiles/ship_explosion1.pex', 'max_turn_speed': 90, 'texture_size': (104, 128), 'hard_points': [(46, 59), (-46, 59)], 'name': 'Bulldog', 'offset_distance': 50, 'engine_effect': 'assets/pexfiles/engine_burn_effect3.pex', 'texture': 'ship1-1', 'width': 108, 'angular_accel': 45, 'max_speed': 150, 'health': 180, 'mass': 250, 'total_rocket_ammo': 40, 'caliber': '14px'}
stardust7bg
stardust3bg
ship_dict {'num_weapons': 2, 'total_bullet_ammo': 200, 'color': 'blue', 'engine_offset': 45, 'price': 1000, 'accel': 25000, 'height': 80, 'explosion_effect': 'assets/pexfiles/ship_explosion1.pex', 'max_turn_speed': 150, 'texture_size': (96, 88), 'hard_points': [(-6, 47), (6, 47)], 'name': 'Shield', 'offset_distance': 50, 'engine_effect': 'assets/pexfiles/engine_burn_effect9.pex', 'texture': 'ship7', 'width': 76, 'angular_accel': 115, 'max_speed': 180, 'health': 150, 'mass': 160, 'total_rocket_ammo': 30, 'caliber': '6px'}
ship_dict {'num_weapons': 1, 'total_bullet_ammo': 200, 'color': 'green', 'engine_offset': 47, 'price': 1000, 'accel': 22000, 'height': 80, 'explosion_effect': 'assets/pexfiles/ship_explosion1.pex', 'max_turn_speed': 125, 'texture_size': (96, 80), 'hard_points': [(0, 47)], 'name': 'Cavalier', 'offset_distance': 50, 'engine_effect': 'assets/pexfiles/engine_burn_effect8.pex', 'texture': 'ship6', 'width': 66, 'angular_accel': 45, 'max_speed': 220, 'health': 110, 'mass': 120, 'total_rocket_ammo': 12, 'caliber': '8px'}
ship_dict {'num_weapons': 1, 'total_bullet_ammo': 150, 'color': 'orange', 'engine_offset': 27, 'price': 1000, 'accel': 18000, 'height': 100, 'explosion_effect': 'assets/pexfiles/ship_explosion1.pex', 'max_turn_speed': 110, 'texture_size': (112, 72), 'hard_points': [(18, 63)], 'name': 'Archon', 'offset_distance': 50, 'engine_effect': 'assets/pexfiles/engine_burn_effect6.pex', 'texture': 'ship5', 'width': 62, 'angular_accel': 50, 'max_speed': 200, 'health': 130, 'mass': 140, 'total_rocket_ammo': 15, 'caliber': '14px'}
ship_dict {'num_weapons': 2, 'total_bullet_ammo': 240, 'color': 'blue', 'engine_offset': 50, 'price': 1000, 'accel': 25000, 'height': 104, 'explosion_effect': 'assets/pexfiles/ship_explosion1.pex', 'max_turn_speed': 130, 'texture_size': (128, 128), 'hard_points': [(28, 51), (-28, 51)], 'name': 'Monarch', 'offset_distance': 50, 'engine_effect': 'assets/pexfiles/engine_burn_effect2.pex', 'texture': 'ship2-1', 'width': 90, 'angular_accel': 100, 'max_speed': 180, 'health': 165, 'mass': 220, 'total_rocket_ammo': 30, 'caliber': '8px'}
ship_dict {'num_weapons': 4, 'total_bullet_ammo': 400, 'color': 'orange', 'engine_offset': 30, 'price': 1000, 'accel': 20000, 'height': 70, 'explosion_effect': 'assets/pexfiles/ship_explosion1.pex', 'max_turn_speed': 100, 'texture_size': (86, 128), 'hard_points': [(38, 30), (-38, 30), (52, 30), (-52, 30)], 'name': 'Falcon', 'offset_distance': 50, 'engine_effect': 'assets/pexfiles/engine_burn_effect4.pex', 'texture': 'ship3', 'width': 130, 'angular_accel': 75, 'max_speed': 190, 'health': 150, 'mass': 175, 'total_rocket_ammo': 60, 'caliber': '6px'}
ship_dict {'num_weapons': 2, 'total_bullet_ammo': 200, 'color': 'green', 'engine_offset': 65, 'price': 1000, 'accel': 15000, 'height': 96, 'explosion_effect': 'assets/pexfiles/ship_explosion1.pex', 'max_turn_speed': 90, 'texture_size': (104, 128), 'hard_points': [(46, 59), (-46, 59)], 'name': 'Bulldog', 'offset_distance': 50, 'engine_effect': 'assets/pexfiles/engine_burn_effect3.pex', 'texture': 'ship1-1', 'width': 108, 'angular_accel': 45, 'max_speed': 150, 'health': 180, 'mass': 250, 'total_rocket_ammo': 40, 'caliber': '14px'}

Exception ValueError: 'max() arg is an empty sequence' in 'kivy.properties.observable_list_dispatch' ignored

I think the value error item might be the problem here!

Can terminate as soon as it starts at times:

The log demonstrating this issue is shown below:
Running: /home/andrew/KivEnt/sample_application/main.py (Wed Aug 20 13:02:32 2014)

[INFO ] [Logger ] Record log in /home/andrew/.kivy/logs/kivy_14-08-20_2.txt
[INFO ] Kivy v1.8.1-dev

[INFO ] [Python ] v2.7.5+ (default, Feb 27 2014, 19:37:08)
[GCC 4.8.1]

[INFO ] [Factory ] 169 symbols loaded

[INFO ] [Image ] Providers: img_tex, img_dds, img_pygame, img_pil, img_gif (img_ffpyplayer ignored)

[INFO ] [Window ] Provider: pygame(['window_egl_rpi'] ignored)

[INFO ] [GL ] OpenGL version <3.0 Mesa 9.2.1>
[INFO ] [GL ] OpenGL vendor
[INFO ] [GL ] OpenGL renderer <Mesa DRI Intel(R) Ivybridge Mobile >
[INFO ] [GL ] OpenGL parsed version: 3, 0
[INFO ] [GL ] Shading version <1.30>
[INFO ] [GL ] Texture max size <8192>
[INFO ] [GL ] Texture max units <16>
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [Text ] Provider: pygame
[INFO ] [AudioGstplayer] Using Gstreamer 1.2.0.0
[INFO ] [Audio ] Providers: audio_gstplayer, audio_pygame (audio_ffpyplayer, audio_sdl ignored)

[INFO ] [Shader ] Read <assets/shaders/positionrotatecolorscaleshader.glsl>

[INFO ] [Shader ] Read <assets/shaders/positionrotatecolorshader.glsl>

[INFO ] [Shader ] Read <assets/shaders/positionrotateshader.glsl>

[INFO ] [Shader ] Read <assets/shaders/positionshader.glsl>
[INFO ] [Shader ] Read <assets/shaders/positionshader.glsl>

[INFO ] [OSC ] using for socket

[INFO ] [ProbeSysfs ] device match: /dev/input/event11

[INFO ] [MTD ] Read event from </dev/input/event11>
[INFO ] [Base ] Start application main loop

Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 808, in *bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 761, in run
self.__target(_self.__args, _self.__kwargs)
File "/usr/local/lib/python2.7/dist-packages/kivy/input/providers/mtdev.py", line 193, in _thread_run
_device = Device(_fn)
File "/usr/local/lib/python2.7/dist-packages/kivy/lib/mtdev.py", line 131, in __init

self._fd = os.open(filename, os.O_NONBLOCK | os.O_RDONLY)
OSError: [Errno 13] Permission denied: '/dev/input/event11'

[INFO ] [GL ] NPOT texture support is available
failed: rescheduling init
ship_dict {'num_weapons': 2, 'total_bullet_ammo': 200, 'color': 'green', 'engine_offset': 65, 'price': 1000, 'accel': 15000, 'height': 96, 'explosion_effect': 'assets/pexfiles/ship_explosion1.pex', 'max_turn_speed': 90, 'texture_size': (104, 128), 'hard_points': [(46, 59), (-46, 59)], 'name': 'Bulldog', 'offset_distance': 50, 'engine_effect': 'assets/pexfiles/engine_burn_effect3.pex', 'texture': 'ship1-1', 'width': 108, 'angular_accel': 45, 'max_speed': 150, 'health': 180, 'mass': 250, 'total_rocket_ammo': 40, 'caliber': '14px'}
stardust8bg

[INFO ] [Base ] Leaving application in progress...

Traceback (most recent call last):

File "/home/andrew/KivEnt/sample_application/main.py", line 304, in
KivEntApp().run()
File "/usr/local/lib/python2.7/dist-packages/kivy/app.py", line 825, in run

 runTouchApp()

File "/usr/local/lib/python2.7/dist-packages/kivy/base.py", line 484, in runTouchApp

 EventLoop.window.mainloop()

File "/usr/local/lib/python2.7/dist-packages/kivy/core/window/window_pygame.py", line 364, in mainloop

 self._mainloop()

File "/usr/local/lib/python2.7/dist-packages/kivy/core/window/window_pygame.py", line 268, in _mainloop
EventLoop.idle()
File "/usr/local/lib/python2.7/dist-packages/kivy/base.py", line 324, in idle
Clock.tick()
File "/usr/local/lib/python2.7/dist-packages/kivy/clock.py", line 482, in tick
self._process_events()
File "/usr/local/lib/python2.7/dist-packages/kivy/clock.py", line 614, in _process_events
event.tick(self._last_tick, remove)
File "/usr/local/lib/python2.7/dist-packages/kivy/clock.py", line 373, in tick
ret = callback(self._dt)
File "/home/andrew/KivEnt/sample_application/main.py", line 182, in update
self.gameworld.update(dt)
File "gameworld.pyx", line 251, in kivent.GameWorld.update (kivent/init.c:14104)
File "gamesystems.pyx", line 172, in kivent.GameSystem._update (kivent/init.c:7873)
File "gamesystems.pyx", line 405, in kivent.GameView.update (kivent/init.c:10229)
TypeError: an integer is required

Looks like the lack of intigers may be the problem here!

I'll try runing on the grapics card and see if that sovles the issue!

Loading the Assets in (Kivent-new model format)

I am trying to modify some of the old examples and make theme work in Kivent-new model format
and i can't solve this :

Traceback (most recent call last):
File "main.py", line 15, in <module>
ModelManager.load_textured_rectangle(4, 7., 7., 'star1', 'star1-4')
TypeError: descriptor 'load_textured_rectangle' requires a 'kivent_core.managers.resource_managers.ModelManager' object but received a 'int'

Unable to run tutorial apps.

Just pulled down your project. Was super excited to see that someone was working on a python game engine!

I followed your setup instructions (actually, did it twice after I got the below error the first time), but when I try to run the basic app example, it get the following error:

Traceback (most recent call last):
File "main.py", line 6, in
import kivent_core
File "/opt/kivent/kivent_tutorials/2_basic_app/kivent_core/init.py", line 1, in
import cmesh
File "texture.pxd", line 3, in init kivent_core.cmesh (kivent_core/cmesh.c:3271)
ValueError: kivy.graphics.texture.Texture has the wrong size, try recompiling

I'm not experienced enough with cython to know exactly what went wrong, but would love a little direction on where to go to get this resolved. Thanks!

Windows support

building 'kivent' extension
E:\Cloud\Kivy-1.8.0-py2.7-win32\MinGW\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IE
:\Cloud\Kivy-1.8.0-py2.7-win32\Python27\include -IE:\Cloud\Kivy-1.8.0-py2.7-win3
2\Python27\PC -c kivent__init__.c -o build\temp.win32-2.7\Release\kivent__init
.o -std=c99 -ffast-math
kivent__init
.c:2786: warning: useless keyword or type name in empty declarati
on
kivent__init__.c:2786: warning: empty declaration
kivent__init__.c:2788: warning: useless keyword or type name in empty declarati
on
kivent__init__.c:2788: warning: empty declaration
kivent__init__.c:2791: warning: useless keyword or type name in empty declarati
on
kivent__init__.c:2791: warning: empty declaration
kivent__init__.c:2793: warning: useless keyword or type name in empty declarati
on
kivent__init__.c:2793: warning: empty declaration
kivent__init__.c: In function __pyx_pf_6kivent_15ParticleManager_22update': kivent\__init__.c:30789: error:M_PI_2' undeclared (first use in this function)

kivent__init__.c:30789: error: (Each undeclared identifier is reported only onc
e
kivent__init__.c:30789: error: for each function it appears in.)
kivent__init__.c: In function __pyx_pf_6kivent_13CymunkPhysics_22create_compon ent': kivent\__init__.c:34732: error:M_PI_2' undeclared (first use in this function)

error: command 'gcc' failed with exit status 1

M_PI_2 not found.
Compiler is gcc-tdm.

And when I try to run sample app, I got:
Fatal Python error: (pygame parachute) Segmentation Fault

btw: Suggest to add spine support, it's a 2d animation tool.

Install isuess with Kivent

Tried installing kivent again but the cython error reappears!

Just in case this is how I install the programmes:
Kivy:
git clone git://github.com/kivy/kivy.git
cd kivy
make
export PYTHONPATH=~"/home/uername/kivy/kivy":$PYTHONPATH

Cymunk:
git clone https://github.com/tito/cymunk.git
cd cymunk
make
export PYTHONPATH=~"/home/username/cymunk/cymunk/python":$PYTHONPATH

kivent:
git clone https://github.com/Kovak/KivEnt.git
cd KivEnt/kivent
python setup.py build_ext --inplace -f

Any sugestions?

Edges of textures in atlas can be dirty

The edges of other images seem to be able to bleed into others in an atlas particularly when scaled down - perhaps from mipmapping.

screenshots:
screenshot1
screenshot2

screenshot of relevant part of atlas:
atlas shot

This does not seem too serious or urgent to me, but I thought I'd submit a quick issue anyway

impossible to install on win7 64 python 3.4

even after trick from internet stackoverflow
for vc++2010express (install sdk and patch it)
create fatal error... installer can not find file renderers.c... in unzipped path from github i can find only renderers.pyx renderers.pxd files.... something wrong

Could not compile cymunk module

Tried this on Ubuntu 64 bit 15.10 in a virtualenv - (the core module did work):

$ python setup.py install
missing cimport in module 'cymunk.cymunk': kivent_cymunk/interaction.pyx
missing cimport in module 'cymunk.cymunk': kivent_cymunk/interaction.pxd
missing cimport in module 'cymunk.cymunk': ./kivent_cymunk/physics.pxd
missing cimport in module 'cymunk.cymunk': kivent_cymunk/physics.pyx
missing cimport in module 'cymunk.cymunk': kivent_cymunk/physics.pxd
Compiling kivent_cymunk/interaction.pyx because it changed.
Compiling kivent_cymunk/physics.pyx because it changed.
[1/2] Cythonizing kivent_cymunk/interaction.pyx

Error compiling Cython file:
------------------------------------------------------------
...
from cymunk.cymunk cimport (Body, PivotJoint, GearJoint, cpBody, cpPivotJoint)
^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:1:0: 'cymunk/cymunk.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from cymunk.cymunk cimport (Body, PivotJoint, GearJoint, cpBody, cpPivotJoint)
^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:1:0: 'cymunk/cymunk/Body.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from cymunk.cymunk cimport (Body, PivotJoint, GearJoint, cpBody, cpPivotJoint)
^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:1:0: 'cymunk/cymunk/PivotJoint.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from cymunk.cymunk cimport (Body, PivotJoint, GearJoint, cpBody, cpPivotJoint)
^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:1:0: 'cymunk/cymunk/GearJoint.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from cymunk.cymunk cimport (Body, PivotJoint, GearJoint, cpBody, cpPivotJoint)
^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:1:0: 'cymunk/cymunk/cpBody.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from cymunk.cymunk cimport (Body, PivotJoint, GearJoint, cpBody, cpPivotJoint)
^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:1:0: 'cymunk/cymunk/cpPivotJoint.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from kivent_core.systems.staticmemgamesystem cimport (StaticMemGameSystem, 
    MemComponent)

ctypedef struct CymunkTouchStruct:
    unsigned int entity_id
    cpBody* touch_body 
   ^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:8:4: 'cpBody' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
    MemComponent)

ctypedef struct CymunkTouchStruct:
    unsigned int entity_id
    cpBody* touch_body 
    cpPivotJoint* pivot
   ^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:9:4: 'cpPivotJoint' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
    unsigned int entity_id
    cpBody* touch_body 
    cpPivotJoint* pivot

cdef class CymunkTouchComponent(MemComponent):
    cdef Body _touch_body
        ^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:12:9: 'Body' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
    cpBody* touch_body 
    cpPivotJoint* pivot

cdef class CymunkTouchComponent(MemComponent):
    cdef Body _touch_body
    cdef PivotJoint _pivot
        ^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:13:9: 'PivotJoint' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...

cdef class CymunkTouchSystem(StaticMemGameSystem):
    pass

cdef class SteeringComponent: 
    cdef Body _steering_body
        ^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:19:9: 'Body' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
cdef class CymunkTouchSystem(StaticMemGameSystem):
    pass

cdef class SteeringComponent: 
    cdef Body _steering_body
    cdef PivotJoint _pivot
        ^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:20:9: 'PivotJoint' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
    pass

cdef class SteeringComponent: 
    cdef Body _steering_body
    cdef PivotJoint _pivot
    cdef GearJoint _gear
        ^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:21:9: 'GearJoint' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
# cython: profile=True
# cython: embedsignature=True
from cymunk.cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:3:0: 'cymunk/cymunk/Vec2d.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
# cython: profile=True
# cython: embedsignature=True
from cymunk.cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:3:0: 'cymunk/cymunk/cpVect.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
# cython: profile=True
# cython: embedsignature=True
from cymunk.cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:3:0: 'cymunk/cymunk/cpv.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
# cython: profile=True
# cython: embedsignature=True
from cymunk.cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:3:0: 'cymunk/cymunk/cpFloat.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
# cython: profile=True
# cython: embedsignature=True
from cymunk.cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:3:0: 'cymunk/cymunk/cpBool.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
# cython: profile=True
# cython: embedsignature=True
from cymunk.cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:3:0: 'cymunk/cymunk/cpvunrotate.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
# cython: profile=True
# cython: embedsignature=True
from cymunk.cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:3:0: 'cymunk/cymunk/cpvrotate.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
# cython: profile=True
# cython: embedsignature=True
from cymunk.cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:3:0: 'cymunk/cymunk/cpvdot.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
# cython: profile=True
# cython: embedsignature=True
from cymunk.cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:3:0: 'cymunk/cymunk/cpvsub.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
# cython: profile=True
# cython: embedsignature=True
from cymunk.cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:3:0: 'cymunk/cymunk/cpvnear.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
# cython: profile=True
# cython: embedsignature=True
from cymunk.cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:3:0: 'cymunk/cymunk/cpvmult.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
# cython: profile=True
# cython: embedsignature=True
from cymunk.cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:3:0: 'cymunk/cymunk/cpvlerp.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
# cython: profile=True
# cython: embedsignature=True
from cymunk.cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:3:0: 'cymunk/cymunk/Space.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from kivent_core.systems.staticmemgamesystem cimport (StaticMemGameSystem, 
    MemComponent)


cdef class PhysicsComponent(MemComponent):
    cdef Body _body
        ^
------------------------------------------------------------

kivent_cymunk/physics.pxd:7:9: 'Body' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
    cdef list _shapes
    cdef str _shape_type

ctypedef struct PhysicsStruct:
    unsigned int entity_id
    cpBody* body
   ^
------------------------------------------------------------

kivent_cymunk/physics.pxd:13:4: 'cpBody' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
    unsigned int entity_id
    cpBody* body


cdef class CymunkPhysics(StaticMemGameSystem):
    cdef Space space
        ^
------------------------------------------------------------

kivent_cymunk/physics.pxd:17:9: 'Space' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
    cdef list bb_query_result
    cdef list on_screen_result
    cdef list segment_query_result

    cdef unsigned int _init_component(self, unsigned int component_index, 
        unsigned int entity_id, cpBody* body, str zone_name) except -1
                               ^
------------------------------------------------------------

kivent_cymunk/physics.pxd:23:32: 'cpBody' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
            self._pivot.error_bias = error_bias

    property touch_body:
        def __get__(self):
            return self._touch_body
        def __set__(self, Body body):
                         ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:74:26: 'Body' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
            self._touch_body = body

    property pivot:
        def __get__(self):
            return self._pivot
        def __set__(self, PivotJoint pivot):
                         ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:80:26: 'PivotJoint' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
            body.p = new_point


cdef class SteeringComponent: 

    def __cinit__(self, Body body, PivotJoint pivot, GearJoint gear,
                       ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:362:24: 'Body' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
            body.p = new_point


cdef class SteeringComponent: 

    def __cinit__(self, Body body, PivotJoint pivot, GearJoint gear,
                                  ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:362:35: 'PivotJoint' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
            body.p = new_point


cdef class SteeringComponent: 

    def __cinit__(self, Body body, PivotJoint pivot, GearJoint gear,
                                                    ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:362:53: 'GearJoint' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        self._active = True

    property steering_body:
        def __get__(self):
            return self._steering_body
        def __set__(self, Body body):
                         ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:374:26: 'Body' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
            self._steering_body = body

    property pivot:
        def __get__(self):
            return self._pivot
        def __set__(self, PivotJoint pivot):
                         ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:380:26: 'PivotJoint' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
            self._pivot = pivot

    property gear:
        def __get__(self):
            return self._gear
        def __set__(self, GearJoint gear):
                         ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:386:26: 'GearJoint' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        component.entity_id = entity_id
        gameworld = self.gameworld
        cdef SystemManager system_manager = gameworld.system_manager
        cdef str physics_id = self.physics_system
        cdef object physics_system = system_manager[physics_id]
        cdef Body touch_body = Body(None, None)
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:188:13: 'Body' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        cdef tuple touch_pos = args['touch_pos']
        cdef unsigned int touched_ent = args['touched_ent']
        touched_entity = entities[touched_ent]
        cdef PhysicsComponent physics_data = getattr(
            touched_entity, physics_id)
        cdef Body body = physics_data.body
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:195:13: 'Body' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        cdef unsigned int touched_ent = args['touched_ent']
        touched_entity = entities[touched_ent]
        cdef PhysicsComponent physics_data = getattr(
            touched_entity, physics_id)
        cdef Body body = physics_data.body
        cdef cpVect body_local = body.world_to_local(touch_pos)
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:196:13: 'cpVect' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        cdef PhysicsComponent physics_data = getattr(
            touched_entity, physics_id)
        cdef Body body = physics_data.body
        cdef cpVect body_local = body.world_to_local(touch_pos)
        cdef tuple body_pos = (body_local.x, body_local.y)
        cdef PivotJoint pivot = PivotJoint(touch_body, body, (0., 0.), 
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:198:13: 'PivotJoint' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
            body_pos)
        touch_body._body.p = cpv(touch_pos[0], touch_pos[1])
        pivot.max_bias = args['max_bias']
        pivot.error_bias = cpow(1.0 - 0.15, 60.0)
        pivot.max_force = args['max_force']
        cdef Space space = physics_system.space
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:204:13: 'Space' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        self.entity_components.remove_entity(component.entity_id)
        gameworld = self.gameworld
        cdef str physics_id = self.physics_system
        cdef SystemManager system_manager = gameworld.system_manager
        physics_system = system_manager[physics_id]
        cdef Space space = physics_system.space
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:252:13: 'Space' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...

    def update(self, float dt):
        gameworld = self.gameworld
        cdef CymunkTouchStruct* system_component 
        cdef PositionStruct2D* pos_comp
        cdef cpBody* body
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:335:13: 'cpBody' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
    def update(self, float dt):
        gameworld = self.gameworld
        cdef CymunkTouchStruct* system_component 
        cdef PositionStruct2D* pos_comp
        cdef cpBody* body
        cdef cpVect p_position
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:336:13: 'cpVect' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        gameworld = self.gameworld
        cdef CymunkTouchStruct* system_component 
        cdef PositionStruct2D* pos_comp
        cdef cpBody* body
        cdef cpVect p_position
        cdef cpVect body_pos
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:337:13: 'cpVect' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        cdef CymunkTouchStruct* system_component 
        cdef PositionStruct2D* pos_comp
        cdef cpBody* body
        cdef cpVect p_position
        cdef cpVect body_pos
        cdef cpVect new_vel
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:338:13: 'cpVect' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        cdef PositionStruct2D* pos_comp
        cdef cpBody* body
        cdef cpVect p_position
        cdef cpVect body_pos
        cdef cpVect new_vel
        cdef cpVect new_point
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:339:13: 'cpVect' is not a type identifier
Traceback (most recent call last):
  File "setup.py", line 71, in <module>
    cymunk_extensions, cymunk_modules)
  File "setup.py", line 54, in build_extensions_for_modules_cython
    return cythonize(ext_list)
  File "/mnt/data/home/stu/.virtualenvs/3d/local/lib/python2.7/site-packages/Cython/Build/Dependencies.py", line 877, in cythonize
    cythonize_one(*args)
  File "/mnt/data/home/stu/.virtualenvs/3d/local/lib/python2.7/site-packages/Cython/Build/Dependencies.py", line 997, in cythonize_one
    raise CompileError(None, pyx_file)
Cython.Compiler.Errors.CompileError: kivent_cymunk/interaction.pyx
 3d  stu  beezlebub  ~  projects  …  kivent  modules  cymun

Install: Pygame required?

I got to installing kivent in a virtualenv but despite filling all (?) SDL dependencies listed by kivy, when I try to import kivent_core I get the error "Unable to find any valuable Window provider at all!":

[INFO   ] [Kivy        ] v1.9.1-dev
[INFO   ] [Python      ] v2.7.6 (default, Jun 22 2015, 17:58:13) 
[GCC 4.8.2]
[INFO   ] [Factory     ] 177 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_gif (img_pygame, img_pil, img_ffpyplayer ignored)
[CRITICAL] [Window      ] Unable to find any valuable Window provider at all!
egl_rpi - ImportError: cannot import name bcm
  File "kivy/core/__init__.py", line 59, in core_select_lib
    fromlist=[modulename], level=0)
  File "kivy/core/window/window_egl_rpi.py", line 12, in <module>
    from kivy.lib.vidcore_lite import bcm, egl

pygame - ImportError: No module named pygame
  File "kivy/core/__init__.py", line 59, in core_select_lib
    fromlist=[modulename], level=0)
  File "kivy/core/window/window_pygame.py", line 8, in <module>
    import pygame

x11 - ImportError: No module named window_x11
  File "kivy/core/__init__.py", line 59, in core_select_lib
    fromlist=[modulename], level=0)

I use the devel versions of kivy and kivent both, pulled with git and installed in the virtualenv with python setup.py build_ext install. Both seem to compile without complaints.

Installing pygame from bitbucket into the virtualenv resolves this issue, but my impression was that pygame should no longer be necessary but that one could use SDL directly?

The kivy install page for virtual environments is vague and maybe a bit out-of date considering --no-site-packages is no longer needed for virtualenv. Anyway, that page lists "Dependencies with legacy PyGame" without actually explaining what this means.

memory leak when changing texture key

Steps to reproduce:

  1. get https://bitbucket.org/maho/testcases-memleak (it's modified example no. 8 with way bigger images and atlas)
  2. adapt buildozer (change path to python-for-android)
  3. VERSION_kivy=master buildozer android debug deploy run logcat

On my SGII, after minute, I see GC activity in logs, after 2 minutes - app crashes.

If I comment out this line: https://bitbucket.org/maho/testcases-memleak/src/c4d50c8616dbe6cda451c7945425f0789f39311b/main.py?at=default&fileviewer=file-view-default#main.py-32 - then app can run forever.

That's why I suspect that it's memory leak and related to texture_key change

touch error

When run game with most recent code (your today's push to master), I get this traceback on android right after I touch the screen:

I/python  (14639): [INFO              ] [Base        ] Leaving application in progress...
I/python  (14639):  Traceback (most recent call last):
I/python  (14639):    File "/home/maho/workspace/khamster/src/buildozer/.buildozer/android/app/main.py", line 117, in <module>
I/python  (14639):    File "/home/maho/workspace/khamster/src/buildozer/p4a/build/python-install/lib/python2.7/site-packages/kivy/app.py", line 828, in run
I/python  (14639):    File "/home/maho/workspace/khamster/src/buildozer/p4a/build/python-install/lib/python2.7/site-packages/kivy/base.py", line 487, in runTouchApp
I/python  (14639):    File "/home/maho/workspace/khamster/src/buildozer/p4a/build/python-install/lib/python2.7/site-packages/kivy/core/window/window_pygame.py", line 401, in mainloop
I/python  (14639):    File "/home/maho/workspace/khamster/src/buildozer/p4a/build/python-install/lib/python2.7/site-packages/kivy/core/window/window_pygame.py", line 288, in _mainloop
I/python  (14639):    File "/home/maho/workspace/khamster/src/buildozer/p4a/build/python-install/lib/python2.7/site-packages/kivy/base.py", line 330, in idle
I/python  (14639):    File "/home/maho/workspace/khamster/src/buildozer/p4a/build/python-install/lib/python2.7/site-packages/kivy/base.py", line 315, in dispatch_input
I/python  (14639):    File "/home/maho/workspace/khamster/src/buildozer/p4a/build/python-install/lib/python2.7/site-packages/kivy/base.py", line 262, in post_dispatch_input
I/python  (14639):  AttributeError: 'NoneType' object has no attribute 'push'
I/python  (14639): Python for android ended.

clear_entities removes wrong entities

see test case in https://bitbucket.org/maho/tmpcase4

run python khamster.py and you will see that this code:

        for x in range(10):
            create_component_dict = {
                                    'rotate_renderer': {'texture': 'bg', 'size': (100 , 100)}, 
                                    'position': (100, 100), 'scale': 1, 'rotate': 0.0
                                }
            component_order = ['position', 'rotate', 'rotate_renderer']
            eid = self.gameworld.init_entity(create_component_dict, component_order)
            ents.append(eid)
            Logger.debug("entity crrated with id=%s"%eid)

        self.gameworld.remove_entity(ents[5])
        self.gameworld.clear_entities()

Produces such log:

[DEBUG  ] Remove component rotate_renderer from entity 5
[DEBUG  ] Remove component rotate from entity 5
[DEBUG  ] Remove component position from entity 5
[DEBUG  ] Remove component rotate_renderer from entity 0
[DEBUG  ] Remove component rotate from entity 0
[DEBUG  ] Remove component position from entity 0
[DEBUG  ] Remove component rotate_renderer from entity 1
[DEBUG  ] Remove component rotate from entity 1
[DEBUG  ] Remove component position from entity 1
[DEBUG  ] Remove component rotate_renderer from entity 2
[DEBUG  ] Remove component rotate from entity 2
[DEBUG  ] Remove component position from entity 2
[DEBUG  ] Remove component rotate_renderer from entity 3
[DEBUG  ] Remove component rotate from entity 3
[DEBUG  ] Remove component position from entity 3
[DEBUG  ] Remove component rotate_renderer from entity 4
[DEBUG  ] Remove component rotate from entity 4
[DEBUG  ] Remove component position from entity 4
[DEBUG  ] Remove component rotate_renderer from entity 6
[DEBUG  ] Remove component rotate from entity 6
[DEBUG  ] Remove component position from entity 6
[DEBUG  ] Remove component rotate_renderer from entity 7
[DEBUG  ] Remove component rotate from entity 7
[DEBUG  ] Remove component position from entity 7
[DEBUG  ] Remove component rotate_renderer from entity 8
[DEBUG  ] Remove component rotate from entity 8
[DEBUG  ] Remove component position from entity 8

In other words - last entity, that one with id=9 is never removed.

gameview scroll boundaries

After recent changes, it's possible to sroll out of map with focus_entity and entity_to_focus. Maybe related to #110

Steps to reproduce:

  1. clone https://bitbucket.org/maho/testcase-scrolllock
  2. run main.py
    RESULT: you can see that orange canvas ends after some time, when orange canves covers whole map.

SHOULD BE: you should see not even little strip of black background.

flickering

See example:

hg clone -r 111241e https://bitbucket.org/maho/tmpkh2/
cd tmpkh2
python khamster.py

What I see, is character which initially flickers a bit. Sometimes unnoticeable. But every few second, entity is removed and created again. And then it flickers more. After several second, flickering is very, very noticeable.

Dynamic Polygon Support

I am interested in polygons that can move and change color rapidly. As we have discussed, methods could include:

  1. Calling glTranslate and glRotate between polygons (color could also be done with glColor?)
  2. Using the VertexShader and uniform vars, changing them before drawing polygons
  3. Using the existing Vertex attribs, updating as needed in an speedy manner.

kivent_cython/__init__.pyx:13:0: 'projectiles.pyx' not found

so I built cymunk and can import it from the python command line with no problems using the installation instructions below from the cymunk docs page:
$ python setup.py build_ext --inplace

Trying to build kivent_cython via:
$ python setup.py build_ext --inplace
or
$ python setup.py
output:
running build_ext
cythoning kivent_cython/init.pyx to kivent_cython/init.c

Error compiling Cython file:

...
include "particle.pyx"
include "gamescreens.pyx"
include "particlemanager.pyx"
include "physics.pyx"
include "renderers.pyx"
include "projectiles.pyx"

^

kivent_cython/init.pyx:13:0: 'projectiles.pyx' not found

building 'kivent_cython' extension
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c kivent_cython/init.c -o build/temp.linux-x86_64-2.7/kivent_cython/init.o -std=c99 -ffast-math
kivent_cython/init.c:1:2: error: #error Do not use this file, it is the result of a failed Cython compilation.
#error Do not use this file, it is the result of a failed Cython compilation.
^
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

I'm currently running Ubuntu 13.10. I really am looking forward to follow your kivent tutorials. What can I do from here?

The issue is that projectiles.pyx doesn't exist in the current kivent/cython scope. I created the file 'projectiles.pyx' and reran the command above but got new compilation errors.

Pretty long but will dump here in case. Thank you!

kivent_cython/cmesh.pyx:4:0: 'VertexBatch.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat
from kivy.graphics.instructions cimport VertexInstruction

from kivy.graphics.c_opengl cimport *

from kivy.graphics.vbo cimport VBO, VertexBatch

^

kivent_cython/cmesh.pyx:4:36: Name 'VertexBatch' not declared in module 'kivy.graphics.vbo'

Error compiling Cython file:

...

from kivy.graphics.c_opengl cimport *

from kivy.graphics.vbo cimport VBO, VertexBatch
from kivy.logger import Logger

cdef class CMesh(VertexInstruction):

^

kivent_cython/cmesh.pyx:8:5: 'VertexInstruction' is not declared

Error compiling Cython file:

...

cdef class CMesh(VertexInstruction):
cdef void* _vertices
cdef void* _indices
cdef VertexFormat vertex_format

^

kivent_cython/cmesh.pyx:11:9: 'VertexFormat' is not a type identifier

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape

^

kivent_cython/physics.pyx:4:0: 'cymunk.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape

^

kivent_cython/physics.pyx:4:0: 'Space.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape

^

kivent_cython/physics.pyx:4:20: Name 'Space' not declared in module 'cymunk'

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape

^

kivent_cython/physics.pyx:4:0: 'BB.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape

^

kivent_cython/physics.pyx:4:27: Name 'BB' not declared in module 'cymunk'

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape

^

kivent_cython/physics.pyx:4:0: 'Body.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape

^

kivent_cython/physics.pyx:4:31: Name 'Body' not declared in module 'cymunk'

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape

^

kivent_cython/physics.pyx:4:0: 'Shape.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape

^

kivent_cython/physics.pyx:4:37: Name 'Shape' not declared in module 'cymunk'

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape

^

kivent_cython/physics.pyx:4:0: 'Circle.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape

^

kivent_cython/physics.pyx:4:44: Name 'Circle' not declared in module 'cymunk'

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape

^

kivent_cython/physics.pyx:4:0: 'BoxShape.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape

^

kivent_cython/physics.pyx:4:52: Name 'BoxShape' not declared in module 'cymunk'

Error compiling Cython file:

...

    space.collision_slop = self.collision_slop
    space.register_bb_query_func(self.bb_query_func)
    space.register_segment_query_func(self.segment_query_func)

def bb_query_func(self, Shape shape):
                       ^

kivent_cython/physics.pyx:50:28: 'Shape' is not a type identifier
warning: kivent_cython/particleemitter.pyx:9:14: cdef variable 'paused' declared after it is used

Error compiling Cython file:

...
self.on_screen_result = list()
self.init_physics()

def add_collision_handler(self, int type_a, int type_b, begin_func=None, 
    pre_solve_func=None, post_solve_func=None, separate_func=None):
    cdef Space space = self.space
        ^

kivent_cython/physics.pyx:27:13: 'Space' is not a type identifier

Error compiling Cython file:

...

def on_damping(self, instance, value):
    self.space.damping = value

def init_physics(self):
    cdef Space space
        ^

kivent_cython/physics.pyx:39:13: 'Space' is not a type identifier

Error compiling Cython file:

...
self.segment_query_result = []
self.space.space_segment_query(vect_start, vect_end)
return self.segment_query_result

def query_bb(self, list box_to_query):
    cdef Space space = self.space
        ^

kivent_cython/physics.pyx:71:13: 'Space' is not a type identifier

Error compiling Cython file:

...
'position': body.position, angle': body.angle}

    '''
    cdef dict shape = entity_component_dict['col_shapes'][0]
    cdef float moment
    cdef Body body
        ^

kivent_cython/physics.pyx:101:13: 'Body' is not a type identifier

Error compiling Cython file:

...

    '''
    cdef dict shape = entity_component_dict['col_shapes'][0]
    cdef float moment
    cdef Body body
    cdef Space space
        ^

kivent_cython/physics.pyx:102:13: 'Space' is not a type identifier

Error compiling Cython file:

...
cdef dict shape = entity_component_dict['col_shapes'][0]
cdef float moment
cdef Body body
cdef Space space
cdef list shapes
cdef Shape new_shape

^

kivent_cython/physics.pyx:104:13: 'Shape' is not a type identifier

Error compiling Cython file:

...
entity_component_dict['entity_id'] = entity_id
super(CymunkPhysics, self).create_component(
entity_id, entity_component_dict)

def remove_entity(self, int entity_id):
    cdef Space space = self.space
        ^

kivent_cython/physics.pyx:171:13: 'Space' is not a type identifier

Error compiling Cython file:

...

def remove_entity(self, int entity_id):
    cdef Space space = self.space
    cdef dict system_data = self.gameworld.entities[
        entity_id][self.system_id]
    cdef Shape shape
        ^

kivent_cython/physics.pyx:174:13: 'Shape' is not a type identifier

Error compiling Cython file:

...
def remove_entity(self, int entity_id):
cdef Space space = self.space
cdef dict system_data = self.gameworld.entities[
entity_id][self.system_id]
cdef Shape shape
cdef Body body = system_data['body']

^

kivent_cython/physics.pyx:175:13: 'Body' is not a type identifier

Error compiling Cython file:

...
space = self.space
space.step(dt)
cdef str system_id = self.system_id
cdef dict entity
cdef dict system_data
cdef Body body

^

kivent_cython/physics.pyx:192:13: 'Body' is not a type identifier

Error compiling Cython file:

...
cdef VertexFormat vertex_format
cdef long vcount
cdef long icount

def __init__(self, **kwargs):
    VertexInstruction.__init__(self, **kwargs)
                    ^

kivent_cython/cmesh.pyx:16:25: undeclared name not builtin: VertexInstruction

Error compiling Cython file:

...

def __init__(self, **kwargs):
    VertexInstruction.__init__(self, **kwargs)
    fmt = kwargs.get('fmt')
    if fmt is not None:
        self.vertex_format = VertexFormat(*fmt)
                                        ^

kivent_cython/cmesh.pyx:19:45: undeclared name not builtin: VertexFormat

Error compiling Cython file:

...
def init(self, *_kwargs):
VertexInstruction.init(self, *_kwargs)
fmt = kwargs.get('fmt')
if fmt is not None:
self.vertex_format = VertexFormat(*fmt)
self.batch = VertexBatch(vbo=VBO(self.vertex_format))

^

kivent_cython/cmesh.pyx:20:36: undeclared name not builtin: VertexBatch

Error compiling Cython file:

...
vertices = <float >self._vertices
indices = <unsigned short
>self._indices
cdef long vcount = self.vcount
cdef vsize = self.batch.vbo.vertex_format.vsize
cdef long icount = self.icount
self.batch.set_data(vertices, (vcount / vsize), indices, icount)

^

kivent_cython/cmesh.pyx:32:36: Cannot convert 'float *' to Python object

Error compiling Cython file:

...
vertices = <float >self._vertices
indices = <unsigned short
>self._indices
cdef long vcount = self.vcount
cdef vsize = self.batch.vbo.vertex_format.vsize
cdef long icount = self.icount
self.batch.set_data(vertices, (vcount / vsize), indices, icount)

^

kivent_cython/cmesh.pyx:32:68: Cannot convert 'unsigned short *' to Python object
warning: kivent_cython/particle.pyx:343:37: Not all members given for struct 'keParticle'
warning: kivent_cython/particle.pyx:343:37: Not all members given for struct 'keParticle'

Error compiling Cython file:

...
def on_damping(self, instance, value):
self.space.damping = value

def init_physics(self):
    cdef Space space
    self.space = space = Space()
                             ^

kivent_cython/physics.pyx:40:34: undeclared name not builtin: Space

Error compiling Cython file:

...
self.space.space_segment_query(vect_start, vect_end)
return self.segment_query_result

def query_bb(self, list box_to_query):
    cdef Space space = self.space
    bb = BB(
          ^

kivent_cython/physics.pyx:72:15: undeclared name not builtin: BB

Error compiling Cython file:

...
shape['shape_info']['height'],
shape['shape_info']['width'])
else:
print 'error: shape ', shape['shape_type'], 'not supported'
if entity_component_dict['mass'] == 0:
body = Body(None, None)

^

kivent_cython/physics.pyx:121:23: undeclared name not builtin: Body

Error compiling Cython file:

...
space.add(body)
shapes = []
for shape in entity_component_dict['col_shapes']:
shape_info = shape['shape_info']
if shape['shape_type'] == 'circle':
new_shape = Circle(body, shape_info['outer_radius'])

^

kivent_cython/physics.pyx:142:34: undeclared name not builtin: Circle

Error compiling Cython file:

...
new_shape.friction = shape['friction']
elif shape['shape_type'] == 'box':
#we need to switch the width and height of our objects
#because kivy's drawing is
#oriented at a 90 degree angle to chipmunk
new_shape = BoxShape(

^

kivent_cython/physics.pyx:148:36: undeclared name not builtin: BoxShape
building 'kivent_cython' extension
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c kivent_cython/init.c -o build/temp.linux-x86_64-2.7/kivent_cython/init.o -std=c99 -ffast-math
kivent_cython/init.c:1:2: error: #error Do not use this file, it is the result of a failed Cython compilation.
#error Do not use this file, it is the result of a failed Cython compilation.
^
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

Documentation on kivent.org via sphinx

For beginners the documentation on kivent.org is pretty thin, could we get a more complete version?

You say here:
"Most of these Classes have cdefed functions that cannot be read by Sphinx. Read the source if you want to find out more about using them."
.. that sphinx is the problem but maybe there's a workaround? (seems possible after googling)

In the meantime, reading the source is fine, it's just harder for newcomers ...

Thanks!

Error when install kivent on fedora 19

Hi, when i try to install kivent on my fedora, i've got lot of error with cython.
Version of kivy : 1.8.1
Version of Cython : 0.20.1
Version of Cymunk : Lastest

Kivy and Cymunk are installed because I use them all time.
They are exported as you said in README file.

Do you have any ideas ? Thanks you.

My logs : "
running install
running build
running build_ext
cythoning kivent/init.pyx to kivent/init.c

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat

^

kivent/cmesh.pyx:1:0: 'kivy.graphics.vertex.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat

^

kivent/cmesh.pyx:1:0: 'VertexFormat.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat

^

kivent/cmesh.pyx:1:34: Name 'VertexFormat' not declared in module 'kivy.graphics.vertex'

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat
from kivy.graphics.instructions cimport VertexInstruction

^

kivent/cmesh.pyx:2:0: 'kivy.graphics.instructions.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat
from kivy.graphics.instructions cimport VertexInstruction

^

kivent/cmesh.pyx:2:0: 'VertexInstruction.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat
from kivy.graphics.instructions cimport VertexInstruction

^

kivent/cmesh.pyx:2:40: Name 'VertexInstruction' not declared in module 'kivy.graphics.instructions'

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat
from kivy.graphics.instructions cimport VertexInstruction

from kivy.graphics.c_opengl cimport *

from kivy.graphics.vbo cimport VBO, VertexBatch

^

kivent/cmesh.pyx:4:0: 'kivy.graphics.vbo.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat
from kivy.graphics.instructions cimport VertexInstruction

from kivy.graphics.c_opengl cimport *

from kivy.graphics.vbo cimport VBO, VertexBatch

^

kivent/cmesh.pyx:4:0: 'VBO.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat
from kivy.graphics.instructions cimport VertexInstruction

from kivy.graphics.c_opengl cimport *

from kivy.graphics.vbo cimport VBO, VertexBatch

^

kivent/cmesh.pyx:4:31: Name 'VBO' not declared in module 'kivy.graphics.vbo'

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat
from kivy.graphics.instructions cimport VertexInstruction

from kivy.graphics.c_opengl cimport *

from kivy.graphics.vbo cimport VBO, VertexBatch

^

kivent/cmesh.pyx:4:0: 'VertexBatch.pxd' not found

Error compiling Cython file:

...
from kivy.graphics.vertex cimport VertexFormat
from kivy.graphics.instructions cimport VertexInstruction

from kivy.graphics.c_opengl cimport *

from kivy.graphics.vbo cimport VBO, VertexBatch

^

kivent/cmesh.pyx:4:36: Name 'VertexBatch' not declared in module 'kivy.graphics.vbo'

Error compiling Cython file:

...

from kivy.graphics.c_opengl cimport *

from kivy.graphics.vbo cimport VBO, VertexBatch
from kivy.logger import Logger

cdef class CMesh(VertexInstruction):

^

kivent/cmesh.pyx:8:5: 'VertexInstruction' is not declared

Error compiling Cython file:

...

cdef class CMesh(VertexInstruction):
cdef void* _vertices
cdef void* _indices
cdef VertexFormat vertex_format

^

kivent/cmesh.pyx:11:9: 'VertexFormat' is not a type identifier

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:0: 'cymunk.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:0: 'Space.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:20: Name 'Space' not declared in module 'cymunk'

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:0: 'BB.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:27: Name 'BB' not declared in module 'cymunk'

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:0: 'Body.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:31: Name 'Body' not declared in module 'cymunk'

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:0: 'Shape.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:37: Name 'Shape' not declared in module 'cymunk'

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:0: 'Circle.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:44: Name 'Circle' not declared in module 'cymunk'

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:0: 'BoxShape.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:52: Name 'BoxShape' not declared in module 'cymunk'

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:0: 'Vec2d.pxd' not found

Error compiling Cython file:

...
from kivy.properties import (StringProperty, ListProperty, ObjectProperty,
BooleanProperty, NumericProperty)
import cymunk
from cymunk import Poly
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d

^

kivent/physics.pyx:5:62: Name 'Vec2d' not declared in module 'cymunk'

Error compiling Cython file:

...
from cymunk cimport Space, BB, Body, Shape, Circle, BoxShape, Vec2d
from libc.math cimport M_PI_2

cdef class PhysicsComponent:
cdef Body _body

^

kivent/physics.pyx:10:9: 'Body' is not a type identifier

Error compiling Cython file:

...
cdef class PhysicsComponent:
cdef Body _body
cdef list _shapes
cdef str _shape_type

def __cinit__(self, Body body, list shapes, str shape_type):
                   ^

kivent/physics.pyx:14:24: 'Body' is not a type identifier

Error compiling Cython file:

...
self._shape_type = shape_type

property body:
    def __get__(self):
        return self._body
    def __set__(self, Body value):
                     ^

kivent/physics.pyx:22:26: 'Body' is not a type identifier

Error compiling Cython file:

...

    space.collision_slop = self.collision_slop
    space.register_bb_query_func(self.bb_query_func)
    space.register_segment_query_func(self.segment_query_func)

def bb_query_func(self, Shape shape):
                       ^

kivent/physics.pyx:152:28: 'Shape' is not a type identifier

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:0: 'GearJoint.pxd' not found

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:21: Name 'GearJoint' not declared in module 'cymunk'

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:0: 'PivotJoint.pxd' not found

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:32: Name 'PivotJoint' not declared in module 'cymunk'

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:44: Name 'Vec2d' not declared in module 'cymunk'

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:0: 'cpVect.pxd' not found

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:51: Name 'cpVect' not declared in module 'cymunk'

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:0: 'cpv.pxd' not found

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:59: Name 'cpv' not declared in module 'cymunk'

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:0: 'cpFloat.pxd' not found

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
cpFloat, cpBool, cpvunrotate, cpvrotate, cpvdot, cpvsub, cpvnear)

^

kivent/steering.pyx:3:4: Name 'cpFloat' not declared in module 'cymunk'

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:0: 'cpBool.pxd' not found

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
cpFloat, cpBool, cpvunrotate, cpvrotate, cpvdot, cpvsub, cpvnear)

^

kivent/steering.pyx:3:13: Name 'cpBool' not declared in module 'cymunk'

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:0: 'cpvunrotate.pxd' not found

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
cpFloat, cpBool, cpvunrotate, cpvrotate, cpvdot, cpvsub, cpvnear)

^

kivent/steering.pyx:3:21: Name 'cpvunrotate' not declared in module 'cymunk'

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:0: 'cpvrotate.pxd' not found

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
cpFloat, cpBool, cpvunrotate, cpvrotate, cpvdot, cpvsub, cpvnear)

^

kivent/steering.pyx:3:34: Name 'cpvrotate' not declared in module 'cymunk'

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:0: 'cpvdot.pxd' not found

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
cpFloat, cpBool, cpvunrotate, cpvrotate, cpvdot, cpvsub, cpvnear)

^

kivent/steering.pyx:3:45: Name 'cpvdot' not declared in module 'cymunk'

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:0: 'cpvsub.pxd' not found

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
cpFloat, cpBool, cpvunrotate, cpvrotate, cpvdot, cpvsub, cpvnear)

^

kivent/steering.pyx:3:53: Name 'cpvsub' not declared in module 'cymunk'

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,

^

kivent/steering.pyx:2:0: 'cpvnear.pxd' not found

Error compiling Cython file:

...

from cymunk cimport (GearJoint, PivotJoint, Vec2d, cpVect, cpv,
cpFloat, cpBool, cpvunrotate, cpvrotate, cpvdot, cpvsub, cpvnear)

^

kivent/steering.pyx:3:61: Name 'cpvnear' not declared in module 'cymunk'

Error compiling Cython file:

...

from libc.math cimport atan2

cdef class SteeringComponent:
cdef Body _steering_body

^

kivent/steering.pyx:9:9: 'Body' is not a type identifier

Error compiling Cython file:

...
from libc.math cimport atan2

cdef class SteeringComponent:
cdef Body _steering_body
cdef PivotJoint _pivot

^

kivent/steering.pyx:10:9: 'PivotJoint' is not a type identifier

Error compiling Cython file:

...

cdef class SteeringComponent:
cdef Body _steering_body
cdef PivotJoint _pivot
cdef GearJoint _gear

^

kivent/steering.pyx:11:9: 'GearJoint' is not a type identifier

Error compiling Cython file:

...
cdef GearJoint _gear
cdef tuple _target
cdef float _speed
cdef bool _active

def __cinit__(self, Body body, PivotJoint pivot, GearJoint gear,
                   ^

kivent/steering.pyx:16:24: 'Body' is not a type identifier

Error compiling Cython file:

...
cdef GearJoint _gear
cdef tuple _target
cdef float _speed
cdef bool _active

def __cinit__(self, Body body, PivotJoint pivot, GearJoint gear,
                              ^

kivent/steering.pyx:16:35: 'PivotJoint' is not a type identifier

Error compiling Cython file:

...
cdef GearJoint _gear
cdef tuple _target
cdef float _speed
cdef bool _active

def __cinit__(self, Body body, PivotJoint pivot, GearJoint gear,
                                                ^

kivent/steering.pyx:16:53: 'GearJoint' is not a type identifier

Error compiling Cython file:

...
self._active = True

property steering_body:
    def __get__(self):
        return self._steering_body
    def __set__(self, Body body):
                     ^

kivent/steering.pyx:28:26: 'Body' is not a type identifier

Error compiling Cython file:

...
self._steering_body = body

property pivot:
    def __get__(self):
        return self._pivot
    def __set__(self, PivotJoint pivot):
                     ^

kivent/steering.pyx:34:26: 'PivotJoint' is not a type identifier

Error compiling Cython file:

...
self._pivot = pivot

property gear:
    def __get__(self):
        return self._gear
    def __set__(self, GearJoint gear):
                     ^

kivent/steering.pyx:40:26: 'GearJoint' is not a type identifier

Error compiling Cython file:

...

cdef void build(self):
    cdef int i
    cdef float* vertices
    cdef VertexBatch batch = self.batch
        ^

kivent/cmesh.pyx:30:13: 'VertexBatch' is not a type identifier
warning: kivent/particleemitter.pyx:9:14: cdef variable 'paused' declared after it is used

Error compiling Cython file:

...

        first_id = arbiter.shapes[0].body.data
        second_id = arbiter.shapes[1].body.data

    '''
    cdef Space space = self.space
        ^

kivent/physics.pyx:128:13: 'Space' is not a type identifier

Error compiling Cython file:

...
def on_damping(self, instance, value):
self.space.damping = value

def init_physics(self):
    '''Internal function that handles initalizing the Cymunk Space'''
    cdef Space space
        ^

kivent/physics.pyx:141:13: 'Space' is not a type identifier

Error compiling Cython file:

...
ignore_groups (list): list of collision_types to ignore during
this query.

    Queries collisions inside a box.
    '''
    cdef Space space = self.space
        ^

kivent/physics.pyx:197:13: 'Space' is not a type identifier

Error compiling Cython file:

...
shape_type.

    '''
    cdef dict shape = entity_component_dict['col_shapes'][0]
    cdef float moment
    cdef Body body
        ^

kivent/physics.pyx:234:13: 'Body' is not a type identifier

Error compiling Cython file:

...

    '''
    cdef dict shape = entity_component_dict['col_shapes'][0]
    cdef float moment
    cdef Body body
    cdef Space space
        ^

kivent/physics.pyx:235:13: 'Space' is not a type identifier

Error compiling Cython file:

...
cdef dict shape = entity_component_dict['col_shapes'][0]
cdef float moment
cdef Body body
cdef Space space
cdef list shapes
cdef Shape new_shape

^

kivent/physics.pyx:237:13: 'Shape' is not a type identifier

Error compiling Cython file:

...
entity, args)
cdef str system_id = self.system_id
cdef PhysicsComponent physics = getattr(entity, system_id)
cdef PositionComponent position = entity.position
cdef RotateComponent rotate = entity.rotate
cdef Body body = physics._body

^

kivent/physics.pyx:304:13: 'Body' is not a type identifier

Error compiling Cython file:

...
cdef PhysicsComponent physics = getattr(entity, system_id)
cdef PositionComponent position = entity.position
cdef RotateComponent rotate = entity.rotate
cdef Body body = physics._body
rotate._r = body.angle - M_PI_2
cdef Vec2d p_position = body.position

^

kivent/physics.pyx:306:13: 'Vec2d' is not a type identifier

Error compiling Cython file:

...
cdef Vec2d p_position = body.position
position._x = p_position.x
position._y = p_position.y

def remove_entity(self, int entity_id):
    cdef Space space = self.space
        ^

kivent/physics.pyx:311:13: 'Space' is not a type identifier

Error compiling Cython file:

...
def remove_entity(self, int entity_id):
cdef Space space = self.space
cdef list entities = self.gameworld.entities
cdef object entity = entities[entity_id]
cdef PhysicsComponent system_data = getattr(entity, self.system_id)
cdef Shape shape

^

kivent/physics.pyx:315:13: 'Shape' is not a type identifier

Error compiling Cython file:

...
cdef Space space = self.space
cdef list entities = self.gameworld.entities
cdef object entity = entities[entity_id]
cdef PhysicsComponent system_data = getattr(entity, self.system_id)
cdef Shape shape
cdef Body body = system_data._body

^

kivent/physics.pyx:316:13: 'Body' is not a type identifier

Error compiling Cython file:

...
cdef str system_id = self.system_id
cdef object entity
cdef PhysicsComponent system_data
cdef RotateComponent rotate
cdef PositionComponent position
cdef Vec2d p_position

^

kivent/physics.pyx:334:13: 'Vec2d' is not a type identifier

Error compiling Cython file:

...
cdef object entity
cdef PhysicsComponent system_data
cdef RotateComponent rotate
cdef PositionComponent position
cdef Vec2d p_position
cdef Body body

^

kivent/physics.pyx:335:13: 'Body' is not a type identifier

Error compiling Cython file:

...
class SteeringSystem(GameSystem):
physics_system = StringProperty(None)
updateable = BooleanProperty(True)

def generate_component(self, dict args):
    cdef Body body = args['body']
        ^

kivent/steering.pyx:85:13: 'Body' is not a type identifier

Error compiling Cython file:

...
physics_system = StringProperty(None)
updateable = BooleanProperty(True)

def generate_component(self, dict args):
    cdef Body body = args['body']
    cdef PivotJoint pivot = args['pivot']
        ^

kivent/steering.pyx:86:13: 'PivotJoint' is not a type identifier

Error compiling Cython file:

...
updateable = BooleanProperty(True)

def generate_component(self, dict args):
    cdef Body body = args['body']
    cdef PivotJoint pivot = args['pivot']
    cdef GearJoint gear = args['gear']
        ^

kivent/steering.pyx:87:13: 'GearJoint' is not a type identifier

Error compiling Cython file:

...
def create_component(self, object entity, dict args):
cdef object gameworld = self.gameworld
cdef dict systems = gameworld.systems
cdef str physics_id = self.physics_system
cdef object physics_system = systems[physics_id]
cdef Body steering_body = Body(None, None)

^

kivent/steering.pyx:98:13: 'Body' is not a type identifier

Error compiling Cython file:

...
cdef dict systems = gameworld.systems
cdef str physics_id = self.physics_system
cdef object physics_system = systems[physics_id]
cdef Body steering_body = Body(None, None)
cdef PhysicsComponent physics_data = getattr(entity, physics_id)
cdef Body body = physics_data.body

^

kivent/steering.pyx:100:13: 'Body' is not a type identifier

Error compiling Cython file:

...
cdef str physics_id = self.physics_system
cdef object physics_system = systems[physics_id]
cdef Body steering_body = Body(None, None)
cdef PhysicsComponent physics_data = getattr(entity, physics_id)
cdef Body body = physics_data.body
cdef PivotJoint pivot = PivotJoint(steering_body, body, (0, 0), (0, 0))

^

kivent/steering.pyx:101:13: 'PivotJoint' is not a type identifier

Error compiling Cython file:

...
cdef object physics_system = systems[physics_id]
cdef Body steering_body = Body(None, None)
cdef PhysicsComponent physics_data = getattr(entity, physics_id)
cdef Body body = physics_data.body
cdef PivotJoint pivot = PivotJoint(steering_body, body, (0, 0), (0, 0))
cdef GearJoint gear = GearJoint(steering_body, body, 0.0, 1.0)

^

kivent/steering.pyx:102:13: 'GearJoint' is not a type identifier

Error compiling Cython file:

...
pivot.max_bias = 0.0
pivot.error_bias = 0.
gear.max_bias = args['turn_speed']
gear.max_force = args['stability']
pivot.max_force = args['max_force']
cdef Space space = physics_system.space

^

kivent/steering.pyx:109:13: 'Space' is not a type identifier

Error compiling Cython file:

...
cdef list entities = gameworld.entities
cdef object entity = entities[entity_id]
cdef SteeringComponent steering_data = getattr(entity, system_id)
cdef str physics_id = self.physics_system
cdef object physics_system = gameworld.systems[physics_id]
cdef Space space = physics_system.space

^

kivent/steering.pyx:124:13: 'Space' is not a type identifier

Error compiling Cython file:

...
cdef int entity_id
cdef str system_id = self.system_id
cdef str physics_id = self.physics_system
cdef SteeringComponent steering_data
cdef PhysicsComponent physics_data
cdef Body body

^

kivent/steering.pyx:138:13: 'Body' is not a type identifier

Error compiling Cython file:

...
cdef str system_id = self.system_id
cdef str physics_id = self.physics_system
cdef SteeringComponent steering_data
cdef PhysicsComponent physics_data
cdef Body body
cdef Body steering_body

^

kivent/steering.pyx:139:13: 'Body' is not a type identifier

Error compiling Cython file:

...
cdef SteeringComponent steering_data
cdef PhysicsComponent physics_data
cdef Body body
cdef Body steering_body
cdef float angle
cdef cpVect v1

^

kivent/steering.pyx:141:13: 'cpVect' is not a type identifier

Error compiling Cython file:

...
cdef PhysicsComponent physics_data
cdef Body body
cdef Body steering_body
cdef float angle
cdef cpVect v1
cdef cpVect target

^

kivent/steering.pyx:142:13: 'cpVect' is not a type identifier

Error compiling Cython file:

...
cdef Body steering_body
cdef float angle
cdef cpVect v1
cdef cpVect target
cdef tuple target_pos
cdef cpVect move_delta

^

kivent/steering.pyx:144:13: 'cpVect' is not a type identifier

Error compiling Cython file:

...
cdef tuple target_pos
cdef cpVect move_delta
cdef float turn
cdef tuple velocity_rot
cdef float speed
cdef cpVect unrot

^

kivent/steering.pyx:148:13: 'cpVect' is not a type identifier

Error compiling Cython file:

...
cdef VertexFormat vertex_format
cdef long vcount
cdef long icount

def __init__(self, **kwargs):
    VertexInstruction.__init__(self, **kwargs)
                    ^

kivent/cmesh.pyx:16:25: undeclared name not builtin: VertexInstruction

Error compiling Cython file:

...

def __init__(self, **kwargs):
    VertexInstruction.__init__(self, **kwargs)
    fmt = kwargs.get('fmt')
    if fmt is not None:
        self.vertex_format = VertexFormat(*fmt)
                                        ^

kivent/cmesh.pyx:19:45: undeclared name not builtin: VertexFormat

Error compiling Cython file:

...
def init(self, *_kwargs):
VertexInstruction.init(self, *_kwargs)
fmt = kwargs.get('fmt')
if fmt is not None:
self.vertex_format = VertexFormat(*fmt)
self.batch = VertexBatch(vbo=VBO(self.vertex_format))

^

kivent/cmesh.pyx:20:36: undeclared name not builtin: VertexBatch

Error compiling Cython file:

...
vertices = <float >self._vertices
indices = <unsigned short
>self._indices
cdef long vcount = self.vcount
cdef vsize = batch.vbo.vertex_format.vsize
cdef long icount = self.icount
batch.set_data(vertices, (vcount / vsize), indices, icount)

^

kivent/cmesh.pyx:37:31: Cannot convert 'float *' to Python object

Error compiling Cython file:

...
vertices = <float >self._vertices
indices = <unsigned short
>self._indices
cdef long vcount = self.vcount
cdef vsize = batch.vbo.vertex_format.vsize
cdef long icount = self.icount
batch.set_data(vertices, (vcount / vsize), indices, icount)

^

kivent/cmesh.pyx:37:63: Cannot convert 'unsigned short *' to Python object
warning: kivent/particle.pyx:343:37: Not all members given for struct 'keParticle'
warning: kivent/particle.pyx:343:37: Not all members given for struct 'keParticle'

Error compiling Cython file:

...
self.space.damping = value

def init_physics(self):
    '''Internal function that handles initalizing the Cymunk Space'''
    cdef Space space
    self.space = space = Space()
                             ^

kivent/physics.pyx:142:34: undeclared name not builtin: Space

Error compiling Cython file:

...

    Queries collisions inside a box.
    '''
    cdef Space space = self.space
    self.ignore_groups=ignore_groups
    bb = BB(
          ^

kivent/physics.pyx:199:15: undeclared name not builtin: BB

Error compiling Cython file:

...
shape['shape_info']['width'],
shape['shape_info']['height'])
else:
print 'error: shape ', shape['shape_type'], 'not supported'
if entity_component_dict['mass'] == 0:
body = Body(None, None)

^

kivent/physics.pyx:254:23: undeclared name not builtin: Body

Error compiling Cython file:

...
space.add(body)
shapes = []
for shape in entity_component_dict['col_shapes']:
shape_info = shape['shape_info']
if shape['shape_type'] == 'circle':
new_shape = Circle(body, shape_info['outer_radius'])

^

kivent/physics.pyx:275:34: undeclared name not builtin: Circle

Error compiling Cython file:

...
shape_info = shape['shape_info']
if shape['shape_type'] == 'circle':
new_shape = Circle(body, shape_info['outer_radius'])
new_shape.friction = shape['friction']
elif shape['shape_type'] == 'box':
new_shape = BoxShape(

^

kivent/physics.pyx:278:36: undeclared name not builtin: BoxShape

Error compiling Cython file:

...
cdef str physics_id = self.physics_system
cdef object physics_system = systems[physics_id]
cdef Body steering_body = Body(None, None)
cdef PhysicsComponent physics_data = getattr(entity, physics_id)
cdef Body body = physics_data.body
cdef PivotJoint pivot = PivotJoint(steering_body, body, (0, 0), (0, 0))

^

kivent/steering.pyx:101:42: undeclared name not builtin: PivotJoint

Error compiling Cython file:

...
cdef object physics_system = systems[physics_id]
cdef Body steering_body = Body(None, None)
cdef PhysicsComponent physics_data = getattr(entity, physics_id)
cdef Body body = physics_data.body
cdef PivotJoint pivot = PivotJoint(steering_body, body, (0, 0), (0, 0))
cdef GearJoint gear = GearJoint(steering_body, body, 0.0, 1.0)

^

kivent/steering.pyx:102:39: undeclared name not builtin: GearJoint

Error compiling Cython file:

...
try:
x, y = target_pos
except:
steering_body.velocity = (0., 0.)
continue
target = cpv(x, y)

^

kivent/steering.pyx:165:28: undeclared name not builtin: cpv

Error compiling Cython file:

...
target = cpv(x, y)
body_pos = body._body.p
v1 = body._body.rot
angle = body.angle
speed = steering_data._speed
move_delta = cpvsub(target, body_pos)

^

kivent/steering.pyx:170:35: undeclared name not builtin: cpvsub

Error compiling Cython file:

...
body_pos = body._body.p
v1 = body._body.rot
angle = body.angle
speed = steering_data._speed
move_delta = cpvsub(target, body_pos)
unrot = cpvunrotate(v1, move_delta)

^

kivent/steering.pyx:171:35: undeclared name not builtin: cpvunrotate

Error compiling Cython file:

...
speed = steering_data._speed
move_delta = cpvsub(target, body_pos)
unrot = cpvunrotate(v1, move_delta)
turn = atan2(unrot.y, unrot.x)
steering_body.angle = angle - turn
if cpvnear(target, body_pos, 75.0):

^

kivent/steering.pyx:174:26: undeclared name not builtin: cpvnear

Error compiling Cython file:

...
if cpvnear(target, body_pos, 75.0):
velocity_rot = (0., 0.)
elif turn <= -1.3 or turn >= 1.3:
velocity_rot = (0., 0.)
else:
new_vec = cpvrotate(v1, cpv(speed, 0.0))

^

kivent/steering.pyx:179:39: undeclared name not builtin: cpvrotate
building 'kivent' extension
gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/usr/include/python2.7 -c kivent/init.c -o build/temp.linux-x86_64-2.7/kivent/init.o -std=c99 -ffast-math
kivent/init.c:1:2: error: #error Do not use this file, it is the result of a failed Cython compilation.
#error Do not use this file, it is the result of a failed Cython compilation.
"

cannot build kivent_cymunk

Hi, using latest kivent and latest kivy, cymunk, setuptools, cython, I have following problem with building it.

commands to build (in virtualenv):


pip install --upgrade pip
pip install --upgrade setuptools
pip install cython


pip install git+https://github.com/tito/cymunk
pip install git+https://github.com/kivy/kivy@master

git clone -b 2.2-dev --single-branch https://github.com/kivy/kivent
cd kivent/modules/core
python setup.py install
cd ../cymunk
python setup.py install

I have bisected it and error starts in this revision: fcd8e8c - previous rev builds ok.

Error is:

1/2] Cythonizing ./kivent_cymunk/interaction.pyx

Error compiling Cython file:
------------------------------------------------------------
...
from cymunk.cymunk cimport (Body, PivotJoint, GearJoint, cpBody, cpPivotJoint,
    cpGearJoint, cpVect)
from cpython cimport bool
from kivent_core.systems.staticmemgamesystem cimport (StaticMemGameSystem,
^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:4:0: 'kivent_core/systems/staticmemgamesystem.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from cymunk.cymunk cimport (Body, PivotJoint, GearJoint, cpBody, cpPivotJoint,
    cpGearJoint, cpVect)
from cpython cimport bool
from kivent_core.systems.staticmemgamesystem cimport (StaticMemGameSystem,
^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:4:0: 'kivent_core/systems/staticmemgamesystem/StaticMemGameSystem.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from cymunk.cymunk cimport (Body, PivotJoint, GearJoint, cpBody, cpPivotJoint,
    cpGearJoint, cpVect)
from cpython cimport bool
from kivent_core.systems.staticmemgamesystem cimport (StaticMemGameSystem,
^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:4:0: 'kivent_core/systems/staticmemgamesystem/MemComponent.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from cymunk.cymunk cimport Body, cpBody, Space
from kivent_core.systems.staticmemgamesystem cimport (StaticMemGameSystem,
    MemComponent)


cdef class PhysicsComponent(MemComponent):
    ^
------------------------------------------------------------

kivent_cymunk/physics.pxd:6:5: 'MemComponent' is not a type name

Error compiling Cython file:
------------------------------------------------------------
...
ctypedef struct PhysicsStruct:
    unsigned int entity_id
    cpBody* body


cdef class CymunkPhysics(StaticMemGameSystem):
    ^
------------------------------------------------------------

kivent_cymunk/physics.pxd:16:5: 'StaticMemGameSystem' is not a type name

Error compiling Cython file:
------------------------------------------------------------
...
ctypedef struct CymunkTouchStruct:
    unsigned int entity_id
    cpBody* touch_body
    cpPivotJoint* pivot

cdef class CymunkTouchComponent(MemComponent):
    ^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:13:5: 'MemComponent' is not a type name

Error compiling Cython file:
------------------------------------------------------------
...

cdef class CymunkTouchComponent(MemComponent):
    cdef Body _touch_body
    cdef PivotJoint _pivot

cdef class CymunkTouchSystem(StaticMemGameSystem):
    ^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:17:5: 'StaticMemGameSystem' is not a type name

Error compiling Cython file:
------------------------------------------------------------
...
    float speed
    float arrived_radius
    bint active
    bint do_movement

cdef class SteeringComponent(MemComponent):
    ^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:31:5: 'MemComponent' is not a type name

Error compiling Cython file:
------------------------------------------------------------
...
cdef class SteeringComponent(MemComponent):
    cdef Body _steering_body
    cdef PivotJoint _pivot
    cdef GearJoint _gear

cdef class SteeringSystem(StaticMemGameSystem):
    ^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:36:5: 'StaticMemGameSystem' is not a type name

Error compiling Cython file:
------------------------------------------------------------
...
    float base_angle
    float current_time
    float recalculate_time
    float query_radius

cdef class SteeringAIComponent(MemComponent):
    ^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:52:5: 'MemComponent' is not a type name

Error compiling Cython file:
------------------------------------------------------------
...
    float query_radius

cdef class SteeringAIComponent(MemComponent):
    pass

cdef class SteeringAISystem(StaticMemGameSystem):
    ^
------------------------------------------------------------

kivent_cymunk/interaction.pxd:55:5: 'StaticMemGameSystem' is not a type name

Error compiling Cython file:
------------------------------------------------------------
...
    PhysicsComponent, PhysicsStruct, CymunkPhysics
    )
from kivent_core.systems.staticmemgamesystem cimport (
    StaticMemGameSystem, MemComponent
    )
from kivent_core.memory_handlers.block cimport MemoryBlock
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:19:0: 'kivent_core/memory_handlers/block.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
    PhysicsComponent, PhysicsStruct, CymunkPhysics
    )
from kivent_core.systems.staticmemgamesystem cimport (
    StaticMemGameSystem, MemComponent
    )
from kivent_core.memory_handlers.block cimport MemoryBlock
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:19:0: 'kivent_core/memory_handlers/block/MemoryBlock.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
    )
from kivent_core.systems.staticmemgamesystem cimport (
    StaticMemGameSystem, MemComponent
    )
from kivent_core.memory_handlers.block cimport MemoryBlock
from kivent_core.memory_handlers.zone cimport MemoryZone
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:20:0: 'kivent_core/memory_handlers/zone.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
    )
from kivent_core.systems.staticmemgamesystem cimport (
    StaticMemGameSystem, MemComponent
    )
from kivent_core.memory_handlers.block cimport MemoryBlock
from kivent_core.memory_handlers.zone cimport MemoryZone
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:20:0: 'kivent_core/memory_handlers/zone/MemoryZone.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from kivent_core.systems.staticmemgamesystem cimport (
    StaticMemGameSystem, MemComponent
    )
from kivent_core.memory_handlers.block cimport MemoryBlock
from kivent_core.memory_handlers.zone cimport MemoryZone
from kivent_core.memory_handlers.indexing cimport IndexedMemoryZone
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:21:0: 'kivent_core/memory_handlers/indexing.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from kivent_core.systems.staticmemgamesystem cimport (
    StaticMemGameSystem, MemComponent
    )
from kivent_core.memory_handlers.block cimport MemoryBlock
from kivent_core.memory_handlers.zone cimport MemoryZone
from kivent_core.memory_handlers.indexing cimport IndexedMemoryZone
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:21:0: 'kivent_core/memory_handlers/indexing/IndexedMemoryZone.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
    StaticMemGameSystem, MemComponent
    )
from kivent_core.memory_handlers.block cimport MemoryBlock
from kivent_core.memory_handlers.zone cimport MemoryZone
from kivent_core.memory_handlers.indexing cimport IndexedMemoryZone
from kivent_core.systems.position_systems cimport (PositionComponent2D,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:22:0: 'kivent_core/systems/position_systems.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
    StaticMemGameSystem, MemComponent
    )
from kivent_core.memory_handlers.block cimport MemoryBlock
from kivent_core.memory_handlers.zone cimport MemoryZone
from kivent_core.memory_handlers.indexing cimport IndexedMemoryZone
from kivent_core.systems.position_systems cimport (PositionComponent2D,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:22:0: 'kivent_core/systems/position_systems/PositionComponent2D.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
    StaticMemGameSystem, MemComponent
    )
from kivent_core.memory_handlers.block cimport MemoryBlock
from kivent_core.memory_handlers.zone cimport MemoryZone
from kivent_core.memory_handlers.indexing cimport IndexedMemoryZone
from kivent_core.systems.position_systems cimport (PositionComponent2D,
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:22:0: 'kivent_core/systems/position_systems/PositionStruct2D.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from kivent_core.memory_handlers.block cimport MemoryBlock
from kivent_core.memory_handlers.zone cimport MemoryZone
from kivent_core.memory_handlers.indexing cimport IndexedMemoryZone
from kivent_core.systems.position_systems cimport (PositionComponent2D,
    PositionStruct2D)
from kivent_core.systems.rotate_systems cimport RotateComponent2D
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:24:0: 'kivent_core/systems/rotate_systems.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from kivent_core.memory_handlers.block cimport MemoryBlock
from kivent_core.memory_handlers.zone cimport MemoryZone
from kivent_core.memory_handlers.indexing cimport IndexedMemoryZone
from kivent_core.systems.position_systems cimport (PositionComponent2D,
    PositionStruct2D)
from kivent_core.systems.rotate_systems cimport RotateComponent2D
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:24:0: 'kivent_core/systems/rotate_systems/RotateComponent2D.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from kivent_core.memory_handlers.indexing cimport IndexedMemoryZone
from kivent_core.systems.position_systems cimport (PositionComponent2D,
    PositionStruct2D)
from kivent_core.systems.rotate_systems cimport RotateComponent2D
cimport cython
from kivent_core.entity cimport Entity
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:26:0: 'kivent_core/entity.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from kivent_core.memory_handlers.indexing cimport IndexedMemoryZone
from kivent_core.systems.position_systems cimport (PositionComponent2D,
    PositionStruct2D)
from kivent_core.systems.rotate_systems cimport RotateComponent2D
cimport cython
from kivent_core.entity cimport Entity
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:26:0: 'kivent_core/entity/Entity.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from kivent_core.entity cimport Entity
from kivy.factory import Factory
from libc.math cimport atan2, pow as cpow
from math import radians
from random import uniform
from kivent_core.managers.system_manager cimport SystemManager
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:31:0: 'kivent_core/managers/system_manager.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from kivent_core.entity cimport Entity
from kivy.factory import Factory
from libc.math cimport atan2, pow as cpow
from math import radians
from random import uniform
from kivent_core.managers.system_manager cimport SystemManager
^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:31:0: 'kivent_core/managers/system_manager/SystemManager.pxd' not found

Error compiling Cython file:
------------------------------------------------------------
...
from math import radians
from random import uniform
from kivent_core.managers.system_manager cimport SystemManager


cdef class CymunkTouchComponent(MemComponent):
    ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:34:5: 'MemComponent' is not a type name

Error compiling Cython file:
------------------------------------------------------------
...

        **error_bias** (float): The rate at which the joint is corrected.

    '''

    def __cinit__(self, MemoryBlock memory_block, unsigned int index,
                       ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:60:24: 'MemoryBlock' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        def __get__(self):
            return self._pivot
        def __set__(self, PivotJoint pivot):
            self._pivot = pivot

cdef class CymunkTouchSystem(StaticMemGameSystem):
    ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:94:5: 'StaticMemGameSystem' is not a type name

Error compiling Cython file:
------------------------------------------------------------
...
            body.p = new_point


cdef class SteeringComponent:

    def __cinit__(self, MemoryBlock memory_block, unsigned int index,
                       ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:373:24: 'MemoryBlock' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        def __set__(self, bool new):
            cdef SteeringStruct* data = <SteeringStruct*>self.pointer
            data.do_movement = new


cdef class SteeringSystem(StaticMemGameSystem):
    ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:454:5: 'StaticMemGameSystem' is not a type name

Error compiling Cython file:
------------------------------------------------------------
...

        def __set__(self, float value):
            cdef SteeringAIStruct* data = <SteeringAIStruct*>self.pointer
            data.query_radius = value

cdef class SteeringAISystem(StaticMemGameSystem):
    ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:688:5: 'StaticMemGameSystem' is not a type name

Error compiling Cython file:
------------------------------------------------------------
...
                'max_force': float,
                #The maximum amount of force this joint can generate.
                }

        '''
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:189:13: 'MemoryZone' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
            component_index]
        cdef CymunkTouchStruct* component = <CymunkTouchStruct*>(
            memory_zone.get_pointer(component_index))
        component.entity_id = entity_id
        gameworld = self.gameworld
        cdef SystemManager system_manager = gameworld.system_manager
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:196:13: 'SystemManager' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        gameworld = self.gameworld
        cdef SystemManager system_manager = gameworld.system_manager
        cdef str physics_id = self.physics_system
        cdef object physics_system = system_manager[physics_id]
        cdef Body touch_body = Body(None, None)
        cdef IndexedMemoryZone entities = gameworld.entities
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:200:13: 'IndexedMemoryZone' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        Args:

            component_index (unsigned int): Component to remove.

        '''
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:234:13: 'MemoryZone' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        '''
        cdef CymunkTouchComponent component = self.components[component_index]
        self.entity_components.remove_entity(component.entity_id)
        gameworld = self.gameworld
        cdef str physics_id = self.physics_system
        cdef SystemManager system_manager = gameworld.system_manager
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:261:13: 'SystemManager' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        The new entity representing the PivotJoint will be created in zone:
        **zone_to_use**.

        '''
        cdef object gameworld = self.gameworld
        cdef SystemManager system_manager = gameworld.system_manager
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:282:13: 'SystemManager' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        The touch move handling keeps track of the touch entity generated in
        on_touch_down, updating its position to the new position of the touch.
        '''

        cdef object gameworld
        cdef SystemManager system_manager
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:314:13: 'SystemManager' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        '''

        cdef object gameworld
        cdef SystemManager system_manager
        cdef object gameview
        cdef IndexedMemoryZone entities
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:316:13: 'IndexedMemoryZone' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        cdef tuple touch_pos = (touch.x, touch.y)
        cdef float camera_scale
        cdef tuple converted_pos
        cdef unsigned int entity_id
        cdef object entity
        cdef PositionComponent2D pos_comp
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:323:13: 'PositionComponent2D' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
            self.gameworld.remove_entity(touch.ud['ent_id'])

    def update(self, float dt):
        gameworld = self.gameworld
        cdef CymunkTouchStruct* system_component
        cdef PositionStruct2D* pos_comp
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:345:13: 'PositionStruct2D' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
    component_type = ObjectProperty(SteeringComponent)

    def init_component(self, unsigned int component_index,
        unsigned int entity_id, str zone, dict args):

        cdef MemoryZone memory_zone = self.imz_components.memory_zone
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:466:13: 'MemoryZone' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
            component_index]
        cdef SteeringStruct* component = <SteeringStruct*>(
            memory_zone.get_pointer(component_index))
        component.entity_id = entity_id
        gameworld = self.gameworld
        cdef SystemManager system_manager = gameworld.system_manager
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:473:13: 'SystemManager' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        gameworld = self.gameworld
        cdef SystemManager system_manager = gameworld.system_manager
        cdef str physics_id = self.physics_system
        cdef CymunkPhysics physics_system = system_manager[physics_id]
        cdef Body steering_body = Body(None, None)
        cdef IndexedMemoryZone entities = gameworld.entities
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:477:13: 'IndexedMemoryZone' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        cdef SystemManager system_manager = gameworld.system_manager
        cdef str physics_id = self.physics_system
        cdef CymunkPhysics physics_system = system_manager[physics_id]
        cdef Body steering_body = Body(None, None)
        cdef IndexedMemoryZone entities = gameworld.entities
        cdef Entity entity = gameworld.entities[entity_id]
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:478:13: 'Entity' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        Args:

            component_index (unsigned int): Component to remove.

        '''
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:517:13: 'MemoryZone' is not a type identifier
warning: kivent_cymunk/interaction.pyx:549:20: Non-trivial type declarators in shared declaration (e.g. mix of pointers and values). Each pointer declaration should be on its own line.
warning: kivent_cymunk/interaction.pyx:549:27: Non-trivial type declarators in shared declaration (e.g. mix of pointers and values). Each pointer declaration should be on its own line.

Error compiling Cython file:
------------------------------------------------------------
...
    component_type = ObjectProperty(SteeringAIComponent)
    physics_system = ObjectProperty(None)

    def init_component(self, unsigned int component_index,
                       unsigned int entity_id, str zone, dict args):
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:699:13: 'MemoryZone' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
                                       PhysicsStruct* entity_physics,
                                       SteeringAIStruct* entity_ai):
        cdef cpVect avoid_vec
        cdef int ob_count = 0
        cdef unsigned int obstacle_id
        cdef IndexedMemoryZone entities = self.gameworld.entities
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:722:13: 'IndexedMemoryZone' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        cdef cpVect avoid_vec
        cdef int ob_count = 0
        cdef unsigned int obstacle_id
        cdef IndexedMemoryZone entities = self.gameworld.entities
        cdef unsigned int entity_id = entity_physics.entity_id
        cdef Entity obstacle
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:724:13: 'Entity' is not a type identifier
warning: kivent_cymunk/interaction.pyx:729:20: Non-trivial type declarators in shared declaration (e.g. mix of pointers and values). Each pointer declaration should be on its own line.
warning: kivent_cymunk/interaction.pyx:729:34: Non-trivial type declarators in shared declaration (e.g. mix of pointers and values). Each pointer declaration should be on its own line.

Error compiling Cython file:
------------------------------------------------------------
...
            avoidance_sum = cpvmult(avoidance_sum, 1./ob_count)
        return avoidance_sum

    def update(self, dt):
        gameworld = self.gameworld
        cdef IndexedMemoryZone entities = gameworld.entities
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:756:13: 'IndexedMemoryZone' is not a type identifier
warning: kivent_cymunk/interaction.pyx:759:20: Non-trivial type declarators in shared declaration (e.g. mix of pointers and values). Each pointer declaration should be on its own line.
warning: kivent_cymunk/interaction.pyx:759:27: Non-trivial type declarators in shared declaration (e.g. mix of pointers and values). Each pointer declaration should be on its own line.
warning: kivent_cymunk/interaction.pyx:759:43: Non-trivial type declarators in shared declaration (e.g. mix of pointers and values). Each pointer declaration should be on its own line.

Error compiling Cython file:
------------------------------------------------------------
...
        cdef void** component_data = <void**>(
            self.entity_components.memory_block.data)
        cdef unsigned int component_count = self.entity_components.count
        cdef unsigned int count = self.entity_components.memory_block.count
        cdef unsigned int i, real_index
        cdef Entity target_entity, current_entity
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:765:13: 'Entity' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
            self.entity_components.memory_block.data)
        cdef unsigned int component_count = self.entity_components.count
        cdef unsigned int count = self.entity_components.memory_block.count
        cdef unsigned int i, real_index
        cdef Entity target_entity, current_entity
        cdef PositionComponent2D target_position
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:766:13: 'PositionComponent2D' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        Args:

            component_index (unsigned int): Component to remove.

        '''
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:853:13: 'MemoryZone' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...

        '''
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
        cdef CymunkTouchComponent py_component = self.components[
            component_index]
        cdef CymunkTouchStruct* component = <CymunkTouchStruct*>(
                                           ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:192:44: Casting temporary Python object to non-numeric non-Python type

Error compiling Cython file:
------------------------------------------------------------
...

        '''
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
        cdef CymunkTouchComponent py_component = self.components[
            component_index]
        cdef CymunkTouchStruct* component = <CymunkTouchStruct*>(
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:192:13: Storing unsafe C derivative of temporary Python reference

Error compiling Cython file:
------------------------------------------------------------
...

            component_index (unsigned int): Component to remove.

        '''
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
        cdef CymunkTouchStruct* pointer = <CymunkTouchStruct*>(
                                         ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:235:42: Casting temporary Python object to non-numeric non-Python type

Error compiling Cython file:
------------------------------------------------------------
...

            component_index (unsigned int): Component to remove.

        '''
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
        cdef CymunkTouchStruct* pointer = <CymunkTouchStruct*>(
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:235:13: Storing unsafe C derivative of temporary Python reference

Error compiling Cython file:
------------------------------------------------------------
...
        cdef cpBody* body
        cdef cpVect p_position
        cdef cpVect body_pos
        cdef cpVect new_vel
        cdef cpVect new_point
        cdef void** component_data = <void**>(
                                    ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:351:37: Python objects cannot be cast to pointers of primitive types

Error compiling Cython file:
------------------------------------------------------------
...

        for i in range(count):
            real_index = i*component_count
            if component_data[real_index] == NULL:
                continue
            pos_comp = <PositionStruct2D*>component_data[real_index+1]
                       ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:361:24: 'PositionStruct2D' is not a type identifier

Error compiling Cython file:
------------------------------------------------------------
...
        unsigned int entity_id, str zone, dict args):

        cdef MemoryZone memory_zone = self.imz_components.memory_zone
        cdef SteeringComponent py_component = self.components[
            component_index]
        cdef SteeringStruct* component = <SteeringStruct*>(
                                        ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:469:41: Casting temporary Python object to non-numeric non-Python type

Error compiling Cython file:
------------------------------------------------------------
...
        unsigned int entity_id, str zone, dict args):

        cdef MemoryZone memory_zone = self.imz_components.memory_zone
        cdef SteeringComponent py_component = self.components[
            component_index]
        cdef SteeringStruct* component = <SteeringStruct*>(
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:469:13: Storing unsafe C derivative of temporary Python reference

Error compiling Cython file:
------------------------------------------------------------
...

            component_index (unsigned int): Component to remove.

        '''
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
        cdef SteeringStruct* pointer = <SteeringStruct*>(
                                      ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:518:39: Casting temporary Python object to non-numeric non-Python type

Error compiling Cython file:
------------------------------------------------------------
...

            component_index (unsigned int): Component to remove.

        '''
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
        cdef SteeringStruct* pointer = <SteeringStruct*>(
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:518:13: Storing unsafe C derivative of temporary Python reference

Error compiling Cython file:
------------------------------------------------------------
...
    def update(self, dt):
        gameworld = self.gameworld
        cdef SteeringStruct* steering_component
        cdef PhysicsStruct* physics_component
        cdef cpBody *body, *steering_body
        cdef void** component_data = <void**>(
                                    ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:550:37: Python objects cannot be cast to pointers of primitive types

Error compiling Cython file:
------------------------------------------------------------
...
    physics_system = ObjectProperty(None)

    def init_component(self, unsigned int component_index,
                       unsigned int entity_id, str zone, dict args):
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
        cdef SteeringAIStruct* component = <SteeringAIStruct*>(
                                          ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:700:43: Casting temporary Python object to non-numeric non-Python type

Error compiling Cython file:
------------------------------------------------------------
...
    physics_system = ObjectProperty(None)

    def init_component(self, unsigned int component_index,
                       unsigned int entity_id, str zone, dict args):
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
        cdef SteeringAIStruct* component = <SteeringAIStruct*>(
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:700:13: Storing unsafe C derivative of temporary Python reference

Error compiling Cython file:
------------------------------------------------------------
...
        gameworld = self.gameworld
        cdef IndexedMemoryZone entities = gameworld.entities
        cdef SteeringStruct* steering_component
        cdef PhysicsStruct* physics_component
        cdef cpBody *body, *steering_body, *target_body
        cdef void** component_data = <void**>(
                                    ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:760:37: Python objects cannot be cast to pointers of primitive types

Error compiling Cython file:
------------------------------------------------------------
...

            component_index (unsigned int): Component to remove.

        '''
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
        cdef SteeringAIStruct* component = <SteeringAIStruct*>(
                                          ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:854:43: Casting temporary Python object to non-numeric non-Python type

Error compiling Cython file:
------------------------------------------------------------
...

            component_index (unsigned int): Component to remove.

        '''
        cdef MemoryZone memory_zone = self.imz_components.memory_zone
        cdef SteeringAIStruct* component = <SteeringAIStruct*>(
            ^
------------------------------------------------------------

kivent_cymunk/interaction.pyx:854:13: Storing unsafe C derivative of temporary Python reference
Traceback (most recent call last):
  File "setup.py", line 31, in <module>
    "includes": cymunk.get_includes()
  File "/usr/lib/python2.7/distutils/core.py", line 111, in setup
    _setup_distribution = dist = klass(attrs)
  File "/home/maho/.virtualenvs/khamster/local/lib/python2.7/site-packages/setuptools/dist.py", line 272, in __init__
    _Distribution.__init__(self,attrs)
  File "/usr/lib/python2.7/distutils/dist.py", line 287, in __init__
    self.finalize_options()
  File "/home/maho/.virtualenvs/khamster/local/lib/python2.7/site-packages/setuptools/dist.py", line 327, in finalize_options
    ep.load()(self, ep.name, value)
  File "/home/maho/workspace/khamster/src/.binpackages/kivent/modules/cymunk/.eggs/setuptools.autocythonize-0.3.2-py2.7.egg/setuptools/autocythonize/__init__.py", line 69, in auto_cythonize
  File "/home/maho/workspace/khamster/src/.binpackages/kivent/modules/cymunk/.eggs/setuptools.autocythonize-0.3.2-py2.7.egg/setuptools/autocythonize/__init__.py", line 62, in find_cython_extensions
  File "/home/maho/workspace/khamster/src/.binpackages/kivent/modules/cymunk/.eggs/setuptools.autocythonize-0.3.2-py2.7.egg/setuptools/autocythonize/__init__.py", line 23, in cythonize
  File "/home/maho/.virtualenvs/khamster/local/lib/python2.7/site-packages/Cython/Build/Dependencies.py", line 912, in cythonize
    cythonize_one(*args)
  File "/home/maho/.virtualenvs/khamster/local/lib/python2.7/site-packages/Cython/Build/Dependencies.py", line 1034, in cythonize_one
    raise CompileError(None, pyx_file)
Cython.Compiler.Errors.CompileError: ./kivent_cymunk/interaction.pyx

full log of building kivent_core and kivent_cymunk in http://paste.debian.net/685403/

segfault

In examples 5 and 6, accessing entity's attributes leads to segmentation fault error. The issue seems to be related to memory allocation process, after removing the 'touch' zone it works fine.

focus_entity stop working when map size changed

When map size is set to window.root initially, and then changed to bigger size (eg. after level loaded, then focus entity stop working when window size changed).

How to reproduce:

SHOULD BE: camera should still follow hamster
IS: camera stop following hamster and sticks in left-top corner of the map.

Problems with setting up kivent with python 3.5

Hi everyone,

I've been having problems getting it all to work. I've tried to run both python 2.7 and python 3.5 to see what would and wouldn't work, and apparently this is where it differs:
https://github.com/kivy/kivent/wiki/Getting-Started-2:-Creating-A-GameSystem

python setup.py build_ext --inplace

Am I missing something, p3.5 support-wise? If not, are there any plans for python 3.5 support?

Thanks!

EDIT:
I've plunged into it a bit more, and I'm guessing it may be me. Right now I'm checking the imports where obviously p2 and p3 differ. Specifically in the example refered to above, I get this error:

 Traceback (most recent call last):
   File "main_with_cython.py", line 14, in <module>
     from velocity_module.velocity import VelocitySystem2D
 ImportError: /home/diego/python/metamundo/moving_stars/velocity_module/velocity.so: undefined symbol: PyString_Type

I'm not even sure what the "velocity" import should refer to, considering 4 files (.pxd, .pyx, .c, .so) after compiling.

rebatching issue

There is problem, when texture key is changed and new texture is on the different sheet of atlas than previous.

See testcase: https://bitbucket.org/maho/tmpkh2/ , when you run python khamster.py

  • every time frame is changing from that with "1" drawn on it, to that
    with "2" drawn on it, it flickers, and I see following error on console:

Exception ValueError: 'list.remove(x): x not in list' in
'kivent_core.rendering.batching.BatchManager.remove_batch' ignored

Changing texture and rebatching is here:
https://bitbucket.org/maho/tmpkh2/src/6b1431740af1e4befe27866604deab808472f13e/anim.py?at=default#cl-123

error: unknown file type '.pxi' (from './kivent_core/rendering/opcodes.pxi')

When trying to build:

`

+ git clone -b 2.2-dev --single-branch https://github.com/kivy/kivent
Cloning into 'kivent'...
remote: Counting objects: 6277, done.
remote: Total 6277 (delta 0), reused 0 (delta 0), pack-reused 6277
Receiving objects: 100% (6277/6277), 56.32 MiB | 272.00 KiB/s, done.
Resolving deltas: 100% (3634/3634), done.
Checking connectivity... done.
+ cd kivent/modules/core
+ python setup.py install
Compiling ./kivent_core/memory_handlers/block.pyx because it changed.
Compiling ./kivent_core/memory_handlers/indexing.pyx because it changed.
Compiling ./kivent_core/systems/gamemap.pyx because it changed.
Compiling ./kivent_core/systems/gameview.pyx because it changed.
Compiling ./kivent_core/systems/color_systems.pyx because it changed.
Compiling ./kivent_core/systems/rotate_systems.pyx because it changed.
Compiling ./kivent_core/systems/gamesystem.pyx because it changed.
Compiling ./kivent_core/memory_handlers/pool.pyx because it changed.
Compiling ./kivent_core/systems/scale_systems.pyx because it changed.
Compiling ./kivent_core/systems/lifespan.pyx because it changed.
Compiling ./kivent_core/systems/staticmemgamesystem.pyx because it changed.
Compiling ./kivent_core/rendering/gl_debug.pyx because it changed.
Compiling ./kivent_core/rendering/cmesh.pyx because it changed.
Compiling ./kivent_core/rendering/model.pyx because it changed.
Compiling ./kivent_core/memory_handlers/membuffer.pyx because it changed.
Compiling ./kivent_core/systems/position_systems.pyx because it changed.
Compiling ./kivent_core/rendering/vertex_formats.pyx because it changed.
Compiling ./kivent_core/entity.pyx because it changed.
Compiling ./kivent_core/managers/resource_managers.pyx because it changed.
Compiling ./kivent_core/memory_handlers/zone.pyx because it changed.
Compiling ./kivent_core/memory_handlers/zonedblock.pyx because it changed.
Compiling ./kivent_core/rendering/batching.pyx because it changed.
Compiling ./kivent_core/memory_handlers/tests.pyx because it changed.
Compiling ./kivent_core/rendering/vertex_format.pyx because it changed.
Compiling ./kivent_core/rendering/svg_loader.pyx because it changed.
Compiling ./kivent_core/memory_handlers/utils.pyx because it changed.
Compiling ./kivent_core/uix/gamescreens.pyx because it changed.
Compiling ./kivent_core/uix/cwidget.pyx because it changed.
Compiling ./kivent_core/managers/sound_manager.pyx because it changed.
Compiling ./kivent_core/rendering/fixedvbo.pyx because it changed.
Compiling ./kivent_core/gameworld.pyx because it changed.
Compiling ./kivent_core/rendering/frame_objects.pyx because it changed.
Compiling ./kivent_core/managers/system_manager.pyx because it changed.
Compiling ./kivent_core/systems/renderers.pyx because it changed.
Compiling ./kivent_core/managers/entity_manager.pyx because it changed.
[ 1/35] Cythonizing ./kivent_core/entity.pyx
[ 2/35] Cythonizing ./kivent_core/gameworld.pyx
[ 3/35] Cythonizing ./kivent_core/managers/entity_manager.pyx
[ 4/35] Cythonizing ./kivent_core/managers/resource_managers.pyx
[ 5/35] Cythonizing ./kivent_core/managers/sound_manager.pyx
[ 6/35] Cythonizing ./kivent_core/managers/system_manager.pyx
[ 7/35] Cythonizing ./kivent_core/memory_handlers/block.pyx
[ 8/35] Cythonizing ./kivent_core/memory_handlers/indexing.pyx
[ 9/35] Cythonizing ./kivent_core/memory_handlers/membuffer.pyx
[10/35] Cythonizing ./kivent_core/memory_handlers/pool.pyx
[11/35] Cythonizing ./kivent_core/memory_handlers/tests.pyx
[12/35] Cythonizing ./kivent_core/memory_handlers/utils.pyx
[13/35] Cythonizing ./kivent_core/memory_handlers/zone.pyx
[14/35] Cythonizing ./kivent_core/memory_handlers/zonedblock.pyx
[15/35] Cythonizing ./kivent_core/rendering/batching.pyx
[16/35] Cythonizing ./kivent_core/rendering/cmesh.pyx
[17/35] Cythonizing ./kivent_core/rendering/fixedvbo.pyx
[18/35] Cythonizing ./kivent_core/rendering/frame_objects.pyx
[19/35] Cythonizing ./kivent_core/rendering/gl_debug.pyx
[20/35] Cythonizing ./kivent_core/rendering/model.pyx
[21/35] Cythonizing ./kivent_core/rendering/svg_loader.pyx
[22/35] Cythonizing ./kivent_core/rendering/vertex_format.pyx
[23/35] Cythonizing ./kivent_core/rendering/vertex_formats.pyx
[24/35] Cythonizing ./kivent_core/systems/color_systems.pyx
[25/35] Cythonizing ./kivent_core/systems/gamemap.pyx
[26/35] Cythonizing ./kivent_core/systems/gamesystem.pyx
[27/35] Cythonizing ./kivent_core/systems/gameview.pyx
[28/35] Cythonizing ./kivent_core/systems/lifespan.pyx
[29/35] Cythonizing ./kivent_core/systems/position_systems.pyx
[30/35] Cythonizing ./kivent_core/systems/renderers.pyx
[31/35] Cythonizing ./kivent_core/systems/rotate_systems.pyx
[32/35] Cythonizing ./kivent_core/systems/scale_systems.pyx
[33/35] Cythonizing ./kivent_core/systems/staticmemgamesystem.pyx
[34/35] Cythonizing ./kivent_core/uix/cwidget.pyx
[35/35] Cythonizing ./kivent_core/uix/gamescreens.pyx
running install
running bdist_egg
running egg_info
creating KivEnt.Core.egg-info
writing KivEnt.Core.egg-info/PKG-INFO
writing top-level names to KivEnt.Core.egg-info/top_level.txt
writing dependency_links to KivEnt.Core.egg-info/dependency_links.txt
writing manifest file 'KivEnt.Core.egg-info/SOURCES.txt'
reading manifest file 'KivEnt.Core.egg-info/SOURCES.txt'
writing manifest file 'KivEnt.Core.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
creating build
creating build/lib.linux-x86_64-2.7
creating build/lib.linux-x86_64-2.7/kivent_core
copying kivent_core/__init__.py -> build/lib.linux-x86_64-2.7/kivent_core
creating build/lib.linux-x86_64-2.7/kivent_core/uix
copying kivent_core/uix/__init__.py -> build/lib.linux-x86_64-2.7/kivent_core/uix
creating build/lib.linux-x86_64-2.7/kivent_core/memory_handlers
copying kivent_core/memory_handlers/__init__.py -> build/lib.linux-x86_64-2.7/kivent_core/memory_handlers
creating build/lib.linux-x86_64-2.7/kivent_core/systems
copying kivent_core/systems/__init__.py -> build/lib.linux-x86_64-2.7/kivent_core/systems
creating build/lib.linux-x86_64-2.7/kivent_core/managers
copying kivent_core/managers/__init__.py -> build/lib.linux-x86_64-2.7/kivent_core/managers
creating build/lib.linux-x86_64-2.7/kivent_core/rendering
copying kivent_core/rendering/__init__.py -> build/lib.linux-x86_64-2.7/kivent_core/rendering
copying kivent_core/entity.pxd -> build/lib.linux-x86_64-2.7/kivent_core
copying kivent_core/uix/cwidget.pxd -> build/lib.linux-x86_64-2.7/kivent_core/uix
copying kivent_core/memory_handlers/zone.pxd -> build/lib.linux-x86_64-2.7/kivent_core/memory_handlers
copying kivent_core/memory_handlers/zonedblock.pxd -> build/lib.linux-x86_64-2.7/kivent_core/memory_handlers
copying kivent_core/memory_handlers/utils.pxd -> build/lib.linux-x86_64-2.7/kivent_core/memory_handlers
copying kivent_core/memory_handlers/indexing.pxd -> build/lib.linux-x86_64-2.7/kivent_core/memory_handlers
copying kivent_core/memory_handlers/block.pxd -> build/lib.linux-x86_64-2.7/kivent_core/memory_handlers
copying kivent_core/memory_handlers/membuffer.pxd -> build/lib.linux-x86_64-2.7/kivent_core/memory_handlers
copying kivent_core/memory_handlers/pool.pxd -> build/lib.linux-x86_64-2.7/kivent_core/memory_handlers
copying kivent_core/systems/gamesystem.pxd -> build/lib.linux-x86_64-2.7/kivent_core/systems
copying kivent_core/systems/gameview.pxd -> build/lib.linux-x86_64-2.7/kivent_core/systems
copying kivent_core/systems/rotate_systems.pxd -> build/lib.linux-x86_64-2.7/kivent_core/systems
copying kivent_core/systems/staticmemgamesystem.pxd -> build/lib.linux-x86_64-2.7/kivent_core/systems
copying kivent_core/systems/position_systems.pxd -> build/lib.linux-x86_64-2.7/kivent_core/systems
copying kivent_core/systems/gamemap.pxd -> build/lib.linux-x86_64-2.7/kivent_core/systems
copying kivent_core/systems/lifespan.pxd -> build/lib.linux-x86_64-2.7/kivent_core/systems
copying kivent_core/systems/scale_systems.pxd -> build/lib.linux-x86_64-2.7/kivent_core/systems
copying kivent_core/systems/color_systems.pxd -> build/lib.linux-x86_64-2.7/kivent_core/systems
copying kivent_core/systems/renderers.pxd -> build/lib.linux-x86_64-2.7/kivent_core/systems
copying kivent_core/managers/sound_manager.pxd -> build/lib.linux-x86_64-2.7/kivent_core/managers
copying kivent_core/managers/system_manager.pxd -> build/lib.linux-x86_64-2.7/kivent_core/managers
copying kivent_core/managers/resource_managers.pxd -> build/lib.linux-x86_64-2.7/kivent_core/managers
copying kivent_core/managers/entity_manager.pxd -> build/lib.linux-x86_64-2.7/kivent_core/managers
copying kivent_core/rendering/svg_loader.pxd -> build/lib.linux-x86_64-2.7/kivent_core/rendering
copying kivent_core/rendering/cmesh.pxd -> build/lib.linux-x86_64-2.7/kivent_core/rendering
copying kivent_core/rendering/model.pxd -> build/lib.linux-x86_64-2.7/kivent_core/rendering
copying kivent_core/rendering/batching.pxd -> build/lib.linux-x86_64-2.7/kivent_core/rendering
copying kivent_core/rendering/vertex_formats.pxd -> build/lib.linux-x86_64-2.7/kivent_core/rendering
copying kivent_core/rendering/frame_objects.pxd -> build/lib.linux-x86_64-2.7/kivent_core/rendering
copying kivent_core/rendering/vertex_format.pxd -> build/lib.linux-x86_64-2.7/kivent_core/rendering
copying kivent_core/rendering/gl_debug.pxd -> build/lib.linux-x86_64-2.7/kivent_core/rendering
copying kivent_core/rendering/fixedvbo.pxd -> build/lib.linux-x86_64-2.7/kivent_core/rendering
running build_ext
building 'kivent_core.memory_handlers.block' extension
creating build/temp.linux-x86_64-2.7
creating build/temp.linux-x86_64-2.7/kivent_core
creating build/temp.linux-x86_64-2.7/kivent_core/memory_handlers
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/home/maho/.virtualenvs/khamster/local/lib/python2.7/site-packages/kivy/graphics -I/home/maho/.virtualenvs/khamster/local/lib/python2.7/site-packages/kivy/tools/gles_compat -I/usr/include/python2.7 -c ./kivent_core/memory_handlers/block.c -o build/temp.linux-x86_64-2.7/./kivent_core/memory_handlers/block.o -std=c99 -ffast-math -w
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/./kivent_core/memory_handlers/block.o -o build/lib.linux-x86_64-2.7/kivent_core/memory_handlers/block.so
building 'kivent_core.memory_handlers.indexing' extension
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/home/maho/.virtualenvs/khamster/local/lib/python2.7/site-packages/kivy/graphics -I/home/maho/.virtualenvs/khamster/local/lib/python2.7/site-packages/kivy/tools/gles_compat -I/usr/include/python2.7 -c ./kivent_core/memory_handlers/indexing.c -o build/temp.linux-x86_64-2.7/./kivent_core/memory_handlers/indexing.o -std=c99 -ffast-math -w
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/./kivent_core/memory_handlers/indexing.o -o build/lib.linux-x86_64-2.7/kivent_core/memory_handlers/indexing.so
building 'kivent_core.systems.gamemap' extension
creating build/temp.linux-x86_64-2.7/kivent_core/systems
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/home/maho/.virtualenvs/khamster/local/lib/python2.7/site-packages/kivy/graphics -I/home/maho/.virtualenvs/khamster/local/lib/python2.7/site-packages/kivy/tools/gles_compat -I/usr/include/python2.7 -c ./kivent_core/systems/gamemap.c -o build/temp.linux-x86_64-2.7/./kivent_core/systems/gamemap.o -std=c99 -ffast-math -w
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/./kivent_core/systems/gamemap.o -o build/lib.linux-x86_64-2.7/kivent_core/systems/gamemap.so
building 'kivent_core.rendering.opcodes' extension
 error: unknown file type '.pxi' (from './kivent_core/rendering/opcodes.pxi')
`

pa
```ckages installed:

maho@dlaptop:~/workspace/khamster/src$ pip freeze cymunk==0.0.0 Cython==0.24 docutils==0.12 KivEnt-Core==0.0.0 KivEnt-Cymunk==0.0.0 Kivy==1.9.2.dev0 Kivy-Garden==0.1.4 Pygments==2.1.3 requests==2.10.0

kivent instalation error in compilation

i have used sudo python setup.py build_ext install to compile ''/KivEnt/modules/core''
and it agaves me :
`in file included from kivent_core/rendering/frame_objects.c:239:0:
kivent_core/rendering/gl_redirect.h:34:26: fatal error: GLES2/gl2.h: No such file or directory

include <GLES2/gl2.h>`

i managed to fix that by removing that section from the file "gl_redirect.h"
but now i have this problem :
kivent_core/rendering/frame_objects.c:469:3: error: unknown type name ‘GLuint’
GLuint type;
^
kivent_core/rendering/frame_objects.c:545:3: error: unknown type name ‘GLuint’
GLuint id;
^

buildozer build issue

Problem with building using buildozer, anyway, steps to reproduce:

  1. mkdir ~/tmp/check
  2. cd ~/tmp/check
  3. mkvirtualenv tmpcheck
  4. pip install cython
  5. pip install git+https://github.com/tito/cymunk
  6. pip install git+https://github.com/kivy/kivy@master
  7. pip install buildozer
  8. git clone -b old_toolchain --single-branch https://github.com/kivy/python-for-android p4a
  9. git clone -b 2.2-dev https://github.com/kivy/kivent
  10. touch main.py
  11. buildozer init
  12. cp -v kivent/modules/recipes/kivent_core/recipe.sh p4a/recipes/kivent_core/recipe.sh
  13. cp -v kivent/modules/recipes/kivent_cymunk/recipe.sh p4a/recipes/kivent_cymunk/recipe.sh
  14. perl -pi -e 's/^requirements.*/requirements = kivent_core,kivent_cymunk,kivy/' buildozer.spec
  15. VERSION_kivy=master P4A_kivent_core_DIR=/tmp/check/kivent/modules/core/ P4A_kivent_cymunk_DIR=/tmp/check/kivent/modules/cymunk/ APP_ANDROID_P4A_DIR=~/tmp/check/p4a/ buildozer --verbose android debug

Result:

result:


Call build_kivent_core

Entering in ARM environment

Compiler found at /home/maho/.buildozer/android/platform/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin//arm-linux-androideabi-gcc

[INFO              ] [Logger      ] Record log in /home/maho/.kivy/logs/kivy-16-02-01-7.log

[INFO              ] [Kivy        ] v1.9.2-dev0

[INFO              ] [Python      ] v2.7.2 (default, Feb  1 2016, 13:21:49)

[GCC 4.9.2]

running build_ext

Traceback (most recent call last):

  File "setup.py", line 5, in <module>

    import kivy

ImportError: No module named kivy

# Command failed: ./distribute.sh -m "kivent_core kivent_cymunk kivy" -d "myapp"

#

# Buildozer failed to execute the last command

# The error might be hidden in the log above this error

# Please read the full log, and search for it before

# raising an issue with buildozer itself.

# In case of a bug report, please add a full log with log_level = 2

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.