Open GoogleCodeExporter opened 9 years ago
the lib rocket owner had not slove the the ogre intergrate .
http://forums.librocket.com/viewtopic.php?f=6&t=813
Original comment by lin...@gmail.com
on 9 Aug 2012 at 4:18
did you try to ask in the ogre-forums? Maybe they know a solution?
Original comment by tomag...@googlemail.com
on 9 Aug 2012 at 9:14
yeah , i will try it .
do you have something plan to design an abrastract layer to support ui engine
select, then we can support other ui engine, like mygui/cegui/qt. etc. i know
mygui can port to iphone. i had succeed tested on ogre1.7.
Original comment by lin...@gmail.com
on 12 Aug 2012 at 1:38
Did you already ask in the ogre forums? I'm currently having the same problem.
But I'm not sure whether libRocket doesn't support ios. Because they provide
XCode projects to compile librocket for ios. Although there is no demo
project...
Original comment by underd...@gmail.com
on 13 Aug 2012 at 10:51
Some time ago when I wanted to get librocket running on android I struggled
also over the 32bit indexbuffer and my lack of ogre-knowledge (that might be a
bit different now). I converted the buffer to 16bit, but didn't get it to work.
I think it should(!) be possible to get it work on android and iOS. At least on
the librocket they say that there is a game out using it...
@lin: eventhough a ui-layer would be the gamekit-way I don't plan something
like this(not sure about DiThi). Feel free to contribute something like this.
An abstract UI-Layer would be a great thing. :D
Original comment by tomag...@googlemail.com
on 13 Aug 2012 at 3:14
i had asked in the ogre forum.
http://www.ogre3d.org/forums/viewtopic.php?f=2&t=71384 , but not answer till
now.
i think no demo , no true. i had asked librocket's owner, but no answer. if
it can , why not to write a demo, it just a little time.
Original comment by lin...@gmail.com
on 13 Aug 2012 at 6:01
Well that's life. From time to time you have to dig into something reallly deep
which can last days for just 2 lines of code :D You can't actually demand from
the librocket-guy(s) to write a demo for you. Simple or not.
On the frontpage of the librocket side they say there are games on android and
iOS using librocket (even though I can't see anything about it in that
videos)...
Original comment by tomag...@googlemail.com
on 13 Aug 2012 at 9:53
yeah , that is the point "many days for just 2 lines code". thanks for you
reply probably must to check the ogre-ios shader system , which i am
unfamiliar. i think i must spent double spare days to learn it, then back to
this.
Original comment by lin...@gmail.com
on 14 Aug 2012 at 2:05
[deleted comment]
Yeah, sad but true. It is always like this... It's all about learning, and this
is not lost...you will always stay limited and dependent on others if you are
not willing to dig. You won't believe how many hours I just read
ogrekit-sourcecode to find out what's going on :D
Actually don't think you have to have a look at the shader. I think you were
already at the right spot switching to the 16bit index. First step would be to
get it work for the desktop-version as this is much easier to debug. (Actually
I don't see a reason of 32bit an index for a ui-system :D) It must be something
going wrong with creating the ogre-geomerty...
Original comment by thomas.t...@googlemail.com
on 14 Aug 2012 at 8:53
Actually it seems to be really a gles2-rendersystem-issue. Maybe updating ogre
will solve the problem as they have done much stuff concerning
ogles2...updating will need some time...but you can give it a try...
Original comment by tomag...@googlemail.com
on 14 Aug 2012 at 10:09
thanks for you reply, of course i belive. "more and more hour to read/debug
the source code" . that is the main point of the opensource project. i had
read the code in fact. but about the shader , i had some doubts and
suspicions that i can't master, so i must dig into, use any way , debug or
read more issue code to check it ,then master it.
Original comment by lin...@gmail.com
on 15 Aug 2012 at 12:24
I'm not sure how save this method is, but by filling the indices like this, it
seems to work on the iphone. At least it's not crashing...
// Create the index buffer.
Ogre::HardwareIndexBufferSharedPtr index_buffer = Ogre::HardwareBufferManager::getSingleton().createIndexBuffer(Ogre::HardwareIndexBuffer::IT_16BIT, num_indices, Ogre::HardwareBuffer::HBU_STATIC_WRITE_ONLY);
geometry->render_operation.indexData->indexBuffer = index_buffer;
geometry->render_operation.useIndexes = true;
// Fill the index buffer.
uint16_t* ogre_indices = (uint16_t*)index_buffer->lock(0, index_buffer->getSizeInBytes(), Ogre::HardwareBuffer::HBL_NORMAL);
//memcpy(ogre_indices, indices, sizeof(unsigned int) * num_indices);
for (int i = 0; i < num_indices; ++i)
{
ogre_indices[i] = indices[i];
}
index_buffer->unlock();
Only problem I have right now is that the font doesn't get rendered, All I see
is white squares representing letters...
Original comment by underd...@gmail.com
on 16 Aug 2012 at 4:41
did you . that is my iphonedemo main.mm file. i just add the fonts and
the assert file to the iphonedemo target.
i awlays crack at the gles2rendersystem. it seems programPipeline is zero.
LSLESProgramPipeline* programPipeline =
GLSLESProgramPipelineManager::getSingleton().getActiveProgramPipeline();
if (!programPipeline->isAttributeValid(sem, elem->getIndex()))
{
continue;
}
did you change anything else? what about your
arch/sdk/deployent_target/device_family/mac version/xcode version?
archs:armv7 i386/ios5.1/ios 4.0/ipad-iphone/lion 10.7.4/xcode 4.3.1. i use
cmake 2.8.8.
Original comment by lin...@gmail.com
on 16 Aug 2012 at 10:26
Attachments:
this is my renderinterfaceogre3d.cpp/rocketrenderlistener.cpp
it seems that render_system unbindthegpuprogram . where did you bind the gpu
program ?
Original comment by lin...@gmail.com
on 16 Aug 2012 at 10:39
Attachments:
i know you , you just use gles1 no gles2 / i make it with gles1 , got the
same result with you
Original comment by lin...@gmail.com
on 17 Aug 2012 at 2:49
Thanks for the files. Do those work for you with the font as well?
Original comment by underd...@gmail.com
on 17 Aug 2012 at 8:34
no, the font is square in gles1/ but gles2 always crack. i will try
to fix font in the following days.
Original comment by lin...@gmail.com
on 17 Aug 2012 at 7:58
OK. What do you mean by "but gles2 always crack"?
Original comment by underd...@gmail.com
on 18 Aug 2012 at 11:10
it is only work on gles1 rendersystem . but no work for gles2 render.
Original comment by lin...@gmail.com
on 19 Aug 2012 at 12:03
Did you get anywhere with also supporting gles2. I'm also working on it, but it
segfaults. I'm trying because the font is not working with gles1 and it might
ork with gles2. maybe...
Original comment by underd...@gmail.com
on 23 Aug 2012 at 8:08
thanks for you reply.
what is the real meaning of segfaults ?
yes , i try a lot of times . but always got the wrong result .
following is my stack , i don't konw why glslesprogramcommon is nil, and
where to bind the program on gles2?
#0 0x00923586 in
Ogre::GLSLESProgramCommon::isAttributeValid(Ogre::VertexElementSemantic,
unsigned int) at
/volumes/MacData/Work/ogrekit/Ogre-1.8rc/RenderSystems/GLES2/src/GLSLES/src/Ogre
GLSLESProgramCommon.cpp:159
#1 0x00922d74 in Ogre::GLES2RenderSystem::_render(Ogre::RenderOperation const&)
at
/volumes/MacData/Work/ogrekit/Ogre-1.8rc/RenderSystems/GLES2/src/OgreGLES2Render
System.cpp:1521
#2 0x0018390c in RenderInterfaceOgre3D::RenderCompiledGeometry(unsigned long,
Rocket::Core::Vector2<float> const&) at
/volumes/MacData/Work/ogrekit/Engine/GUI/rocket/RenderInterfaceOgre3D.cpp:201
#3 0x00a04fea in Rocket::Core::Geometry::Render(Rocket::Core::Vector2<float>
const&) at
/volumes/MacData/Work/ogrekit/Dependencies/Source/libRocket/Source/Core/Geometry
.cpp:137
#4 0x0094e7c8 in
Rocket::Core::DecoratorTiledBox::RenderElement(Rocket::Core::Element*, unsigned
long) at
/volumes/MacData/Work/ogrekit/Dependencies/Source/libRocket/Source/Core/Decorato
rTiledBox.cpp:297
#5 0x00964308 in Rocket::Core::ElementDecoration::RenderDecorators() at
/volumes/MacData/Work/ogrekit/Dependencies/Source/libRocket/Source/Core/ElementD
ecoration.cpp:172
#6 0x0099c996 in Rocket::Core::Element::Render() at
/volumes/MacData/Work/ogrekit/Dependencies/Source/libRocket/Source/Core/Element.
cpp:182
#7 0x0099c9c6 in Rocket::Core::Element::Render() at
/volumes/MacData/Work/ogrekit/Dependencies/Source/libRocket/Source/Core/Element.
cpp:189
#8 0x0099c9c6 in Rocket::Core::Element::Render() at
/volumes/MacData/Work/ogrekit/Dependencies/Source/libRocket/Source/Core/Element.
cpp:189
#9 0x00987962 in Rocket::Core::Context::Render() at
/volumes/MacData/Work/ogrekit/Dependencies/Source/libRocket/Source/Core/Context.
cpp:161
#10 0x0018488a in
RocketRenderListener::postRenderTargetUpdate(Ogre::RenderTargetEvent const&) at
/volumes/MacData/Work/ogrekit/Engine/GUI/rocket/RocketRenderListener.cpp:65
#11 0x0039b2ba in Ogre::RenderTarget::firePostUpdate() at
/volumes/MacData/Work/ogrekit/Ogre-1.8rc/OgreMain/src/OgreRenderTarget.cpp:432
#12 0x0039a568 in Ogre::RenderTarget::_endUpdate() at
/volumes/MacData/Work/ogrekit/Ogre-1.8rc/OgreMain/src/OgreRenderTarget.cpp:186
#13 0x0039a4ac in Ogre::RenderTarget::updateImpl() at
/volumes/MacData/Work/ogrekit/Ogre-1.8rc/OgreMain/src/OgreRenderTarget.cpp:155
#14 0x0039c0dc in Ogre::RenderTarget::update(bool) at
/volumes/MacData/Work/ogrekit/Ogre-1.8rc/OgreMain/src/OgreRenderTarget.cpp:611
#15 0x003892b2 in Ogre::RenderSystem::_updateAllRenderTargets(bool) at
/volumes/MacData/Work/ogrekit/Ogre-1.8rc/OgreMain/src/OgreRenderSystem.cpp:122
#16 0x003b04d0 in Ogre::Root::_updateAllRenderTargets() at
/volumes/MacData/Work/ogrekit/Ogre-1.8rc/OgreMain/src/OgreRoot.cpp:1393
#17 0x003b0484 in Ogre::Root::renderOneFrame() at
/volumes/MacData/Work/ogrekit/Ogre-1.8rc/OgreMain/src/OgreRoot.cpp:978
#18 0x000c4896 in gkEngine::stepOneFrame() at
/volumes/MacData/Work/ogrekit/Engine/gkEngine.cpp:638
#19 0x0000734c in OgreKit::stepOneFrame() at
/volumes/MacData/Work/ogrekit/Samples/IPhoneDemo/Main.mm:82
#20 0x00006fe0 in -[AppDelegate stepOneFrame:] at
/volumes/MacData/Work/ogrekit/Samples/IPhoneDemo/Main.mm:353
#21 0x378e7422 in CA::Display::DisplayLink::dispatch(unsigned long long,
unsigned long long) ()
#22 0x378e7378 in
CA::Display::IOMFBDisplayLink::callback(__IOMobileFramebuffer*, unsigned long
long, unsigned long long, unsigned long long, void*) ()
#23 0x34ff6f92 in IOMobileFramebufferVsyncNotifyFunc ()
#24 0x37ace890 in IODispatchCalloutFromCFMessage ()
#25 0x38269f42 in __CFMachPortPerform ()
#26 0x38274552 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ ()
#27 0x382744f4 in __CFRunLoopDoSource1 ()
#28 0x38273342 in __CFRunLoopRun ()
#29 0x381f64dc in CFRunLoopRunSpecific ()
#30 0x381f63a4 in CFRunLoopRunInMode ()
#31 0x37fcdfcc in GSEventRunModal ()
#32 0x31d76742 in UIApplicationMain ()
Original comment by lin...@gmail.com
on 24 Aug 2012 at 12:40
in this weekend i had update ogre form 1.8rc to 1.8 , but i got the white
result . just the scene but no the dialog . it is very strange.
Original comment by lin...@gmail.com
on 27 Aug 2012 at 9:44
Attachments:
That's strange. Is this rendered with GLES1 or 2? Did the gui work?
I tried to upgrade to the newest ogre dev version from bitbucket but had the
same results as with the 1.8rc
Original comment by underd...@gmail.com
on 27 Aug 2012 at 9:47
the gles1 render is this.
Original comment by lin...@gmail.com
on 27 Aug 2012 at 10:02
Attachments:
[deleted comment]
why can't see anything with gles2?
can master give me the right to update the code ogre1.8 to source trunk ?
Original comment by lin...@gmail.com
on 27 Aug 2012 at 8:33
to underd:the gui work, but the result is wrong, it is gles2. i use 1.8 r no
rc.
Original comment by lin...@gmail.com
on 27 Aug 2012 at 8:36
It is not as easy to update to the trunk. Some functions have changed. I tried
it once and commented all the parts out that did not work. but I had the same
results as wirth the 18.r
Original comment by underd...@gmail.com
on 28 Aug 2012 at 10:39
need i commit 1.8r and a few change of ogrekit to ogrekit trunk. or you can do it ?
Original comment by lin...@gmail.com
on 28 Aug 2012 at 3:12
No, I can't do it. But you should ask Tom and tell him what files exactly you
have used...
Original comment by underd...@gmail.com
on 29 Aug 2012 at 12:51
who is tom, what is his e-mail
Original comment by lin...@gmail.com
on 30 Aug 2012 at 5:31
http://code.google.com/u/112068207251644828378/#
He also commented on this issue.
Original comment by underd...@gmail.com
on 30 Aug 2012 at 5:42
I can't follow here, has linccg fixed the problem? Just create a patch-file and
I will have a look and commit
Original comment by thomas.t...@googlemail.com
on 31 Aug 2012 at 7:53
[deleted comment]
[deleted comment]
i only fix some, i think this issue is huge,just too deep to dig, so i patch
for the following.
1\update ogre from 1.8rc to 1.8
2\integrate gui demo to iphone demo. 50% (has two problem:
1\for gles1, font mess up hav't fix , see:IMG_0019.PNG,
2\for gles2 the render no crash,render succeful , but see nothing on the scene, see:IMG_0021.PNG )
upload my patch now, hope this can help other.
Original comment by lin...@gmail.com
on 2 Sep 2012 at 7:17
Attachments:
Original issue reported on code.google.com by
lin...@gmail.com
on 9 Aug 2012 at 4:09