Recent Posts

Pages: [1] 2 3 ... 10
1
News / Cqdbbl qfqesh
« Last post by Yoatzw on Today at 07:34:52 am »
purchase lasuna pill - <a href="https://infoherbalmz.com/">lasuna pills</a> purchase himcolin without prescription
2
News / loli schoolgirl
« Last post by RonaldFrape on July 26, 2024, 02:09:11 pm »
cp loli irish colleen
 
 
==> biturl.top/qeAJJf <==
 
==> rlys.nl/6epap3 <==
3
News / payday loan cash
« Last post by KathyIngex on July 26, 2024, 09:18:07 am »
Looking for a quick financial boost? Apply now for a online fast cash loans and secure the funds you need with ease. Whether it's for unexpected expenses, home improvements, or a special purchase, our fast approval process ensures you get the money swiftly. Don't wait - take the first step towards financial freedom today!
4
Support / Re: 3D modeler app made with JPCT-AE, possible or not?
« Last post by MichaelJPCT on July 05, 2024, 02:09:23 pm »
Hi, i have worked on the new project for some time, i think it can work, but it's not finished yet. here is a quick demo of what it would look like.
5
Support / Re: setUniform with int array ?
« Last post by MichaelJPCT on April 26, 2024, 03:54:37 pm »
Thanks Egon,
i found that setUniform(float array) can be used to set boolean uniform too, if the uniform in glsl program is written as 'bool'.

to AeroShark333:
i tried gles3.0 and i am quite sure the app was in es3, but i still can't use bitwise operation (shader doesn't compile if '&' is used).
i just used 3 as the argument when calling the setglesclientversion() method.
6
Support / Re: setUniform with int array ?
« Last post by AeroShark333 on April 25, 2024, 02:41:15 pm »
another question , can there be uniform short array?
You can't specify different integers (byte, short, integer, long, etc.) but you can set the overall integer precision (but this is device specific...).
As of OpenGLES 3.0, you can do more with integers such as bit manipulation. So I could imagine you could store two shorts in a 32-bit integer variable. (idea can be extended to arrays, of course)
You'll need to make sure your renderer supports OpenGLES3.0 and the device also supports it (as well as bit manipulation).

another question , can a uniform array be longer than 1024 elements?
From my experience this is very device specific. Modern devices usually have allow for more than 256 uniform values.
That means that you should take around 240 as your uniform array size limit. (as other uniform variables are also counted for the device limit).
7
Support / Re: setUniform with int array ?
« Last post by EgonOlsen on April 25, 2024, 12:57:15 pm »
Should be doable. You can implement an IRenderHook and attach it to the objects in question. In it, implement the https://www.jpct.net/jpct-ae/doc/com/threed/jpct/IRenderHook.html#setCurrentShader-com.threed.jpct.GLSLShader--method and then do something like:

Code: [Select]
int handle = GLES20.glGetUniformLocation(shader.getProgram(), "your_uniforms_name");
GLES20.glUniform1iv(handle, intArray.length, intArray, 0);

in it...that should work...I guess... ;)
8
Support / Re: setUniform with int array ?
« Last post by MichaelJPCT on April 25, 2024, 12:07:51 pm »
i was thinking about more flexibilities of data format.
for example, since 'short' is not possible, i may use 1 int to store 2 short values. i could save some ram in this way.

but now i found a bigger problem:
i can't use bitwise operation in shader(like int&2 ). so i can't use 1 int to store 32 boolean values. and jpct-ae doesn't provide setUniform(string,bool val). i guess i could use 1 int to store 4 booleans by some calculation, but it's not convenient.

can i call GL functions directly so jpct-ae doesn't need to provide all possible signatures of setUniform?

Thanks.
9
Support / Re: setUniform with int array ?
« Last post by EgonOlsen on April 25, 2024, 11:19:36 am »
No, there isn't. I guess, I never saw the need for it so I somehow overlooked it. Do you need support for this?

Internally, it's used (as you've noticed) for setting the blending modes, but that's the only part that uses it.

About the other questions:

  • There's no setter for short-arrays in the API, so I guess not...
  • I'm not limiting this, so I guess it depends on the GPU/driver what the limit is.
10
Support / setUniform with int array ?
« Last post by MichaelJPCT on April 24, 2024, 05:53:52 am »
hello Egon,
it seems that there is no setUniform(string,int[] val). but in java doc of glsl shader there is: uniform int blendingmode[4].
is that right?

another question , can there be uniform short array?
another question , can a uniform array be longer than 1024 elements?

thanks.
Pages: [1] 2 3 ... 10