Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java-LWJGL-OpenAL-理解一些代码_Java_Lwjgl_Openal - Fatal编程技术网

Java-LWJGL-OpenAL-理解一些代码

Java-LWJGL-OpenAL-理解一些代码,java,lwjgl,openal,Java,Lwjgl,Openal,地狱程序员们,我目前正在学习LWJGL的OpenAL,我不明白这些代码行是做什么的(这些注释代表了我认为他们在做什么,请告诉我正确的事情,我已经阅读了Javadocs,但什么都不懂。我一直在谷歌上搜索。) 请帮助我成为一名更好的程序员。 您可以在这里看到~Teo:data.dispose()清除ByteBuffer,它不会丢弃数据,而是重置读/写位置(请参见)其他的呢?因此,在读/写缓冲区之前先释放()。顺便说一下,我在没有数据的情况下测试了它;是的,它在这个用例中工作得很好。但是,假设您在应用

地狱程序员们,我目前正在学习LWJGL的OpenAL,我不明白这些代码行是做什么的(这些注释代表了我认为他们在做什么,请告诉我正确的事情,我已经阅读了Javadocs,但什么都不懂。我一直在谷歌上搜索。)

请帮助我成为一名更好的程序员。
您可以在这里看到~Teo

:data.dispose()清除ByteBuffer,它不会丢弃数据,而是重置读/写位置(请参见)

其他的呢?因此,在读/写缓冲区之前先释放()。顺便说一下,我在没有数据的情况下测试了它;是的,它在这个用例中工作得很好。但是,假设您在应用程序的其他地方希望再次流式处理缓冲区。您希望从头开始,但缓冲区中的内部位置指向其他位置。因此,在执行alBufferData()之后还是在再次使用之前调用data.dispose.dispose?
WaveData data = WaveData.create(new BufferedInputStream(new FileInputStream("res/sound.wav")));//generate data from the file (binary data?)
    int buffer = alGenBuffers();//generate an empty buffer
    alBufferData(buffer,data.format,data.data,data.samplerate);//assign previously generated data to buffer
    data.dispose();//what does this line do? (I can not understand what dispose means. Throw away or give the data?)    
    int source = alGenSources();//generate source(What does source mean here?)
    alSourcei(source , AL_BUFFER, buffer);//set a property the the source. arg # 1 is the property type , arg # 0 is the source to set the property at and arg # 3 is the value to pass as a property.