Water render fix, minor refactor, README.md update
This commit is contained in:
parent
e437cc99ce
commit
26935473a3
@ -10,6 +10,7 @@
|
||||
- **LMB** - remove block
|
||||
- **RMB** - place block
|
||||
- **F** - toggle flight mode
|
||||
- **N** - noclip mode
|
||||
- **Esc** - exit
|
||||
|
||||
#### Build with CMake
|
||||
|
||||
@ -97,9 +97,6 @@ int _png_load(const char* file, int* width, int* height){
|
||||
return 0;
|
||||
}
|
||||
// configure second post-processing framebuffer
|
||||
unsigned int framebuffer;
|
||||
glGenFramebuffers(1, &framebuffer);
|
||||
glBindFramebuffer(GL_FRAMEBUFFER, framebuffer);
|
||||
|
||||
glGenTextures(1, &texture);
|
||||
glBindTexture(GL_TEXTURE_2D, texture);
|
||||
@ -112,37 +109,7 @@ int _png_load(const char* file, int* width, int* height){
|
||||
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
|
||||
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 3);
|
||||
glGenerateMipmap(GL_TEXTURE_2D);
|
||||
// glFramebufferTexture2D(GL_READ_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, texture, 0); // we only need a color buffer
|
||||
|
||||
glBindTexture(GL_TEXTURE_2D, 0);
|
||||
glBindFramebuffer(GL_FRAMEBUFFER, 0);
|
||||
|
||||
unsigned int framebufferms;
|
||||
glGenFramebuffers(1, &framebufferms);
|
||||
glBindFramebuffer(GL_FRAMEBUFFER, framebufferms);
|
||||
// create a multisampled color attachment texture
|
||||
glGenTextures(1, &texturems);
|
||||
glBindTexture(GL_TEXTURE_2D_MULTISAMPLE, texturems);
|
||||
glTexImage2DMultisample(GL_TEXTURE_2D_MULTISAMPLE, 16, GL_RGBA, t_width, t_height, GL_TRUE);
|
||||
glFramebufferTexture2D(GL_DRAW_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D_MULTISAMPLE, texturems, 0);
|
||||
glTexParameteri(GL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
|
||||
glTexParameteri(GL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
|
||||
glTexParameteri(GL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_WRAP_S, GL_REPEAT);
|
||||
glTexParameteri(GL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_WRAP_T, GL_REPEAT);
|
||||
glTexParameteri(GL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_MAX_LEVEL, 3);
|
||||
// glGenerateMipmap(GL_TEXTURE_2D_MULTISAMPLE);
|
||||
|
||||
|
||||
glBindFramebuffer(GL_READ_FRAMEBUFFER, framebuffer);
|
||||
glBindFramebuffer(GL_DRAW_FRAMEBUFFER, framebufferms);
|
||||
glBlitFramebuffer(0, 0, t_width, t_height, 0, 0, t_width, t_height, GL_COLOR_BUFFER_BIT, GL_NEAREST);
|
||||
|
||||
glBindTexture(GL_TEXTURE_2D_MULTISAMPLE, 0);
|
||||
glBindFramebuffer(GL_FRAMEBUFFER, 0);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
png_destroy_read_struct( &png_ptr, &info_ptr, &end_info );
|
||||
free( image_data );
|
||||
|
||||
@ -252,7 +252,7 @@ bool BlocksRenderer::isOpen(int x, int y, int z, ubyte group) const {
|
||||
if (id == BLOCK_VOID)
|
||||
return false;
|
||||
const Block& block = *Block::blocks[id];
|
||||
if (block.drawGroup != group) {
|
||||
if (block.drawGroup != group && block.lightPassing) {
|
||||
return true;
|
||||
}
|
||||
return !id;
|
||||
|
||||
@ -47,6 +47,7 @@ public:
|
||||
struct EngineSettings {
|
||||
int displayWidth;
|
||||
int displayHeight;
|
||||
/* Anti-aliasing samples */
|
||||
int displaySamples;
|
||||
const char* title;
|
||||
/* Max milliseconds that engine uses for chunks loading only */
|
||||
@ -177,7 +178,7 @@ Engine::~Engine() {
|
||||
int main() {
|
||||
setup_definitions();
|
||||
try {
|
||||
Engine engine(EngineSettings{ 1280, 720, 1, "VoxelEngine-Cpp v13", 10 });
|
||||
Engine engine(EngineSettings{ 1280, 720, 1, "VoxelEngine-Cpp v13", 15 });
|
||||
engine.mainloop();
|
||||
}
|
||||
catch (const initialize_error& err) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user