Changeset 1463
- Timestamp:
- Jun 13, 2012, 12:02:05 AM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/neercs/video/render.cpp
r1462 r1463 535 535 float y = dos_m + (float)(15 * ratio_2d); 536 536 537 /* Background colors */ 538 glDisable(GL_TEXTURE_2D); 539 for (int j = 0; j < caca_get_canvas_height(m_caca); j++) 540 for (int i = 0; i < caca_get_canvas_width(m_caca); i++) 541 { 542 uint32_t att = caca_get_attr(m_caca, i, j); 543 544 glLoadIdentity(); 545 glTranslated(x+i*(dos_w+2*ratio_2d), y+j*(dos_h+4*ratio_2d), 0); 546 547 uint16_t bg = caca_attr_to_rgb12_bg(att); 548 glColor3f((float)(bg >> 8) / 16.f, 549 (float)((bg & 0xf0) >> 4) / 16.f, 550 (float)(bg & 0xf) / 16.f); 551 glDrawArrays(GL_QUADS, 0, 4); 552 } 553 glEnable(GL_TEXTURE_2D); 554 555 /* Foreground characters */ 537 556 for (int j = 0; j < caca_get_canvas_height(m_caca); j++) 538 557 for (int i = 0; i < caca_get_canvas_width(m_caca); i++) … … 541 560 uint32_t att = caca_get_attr(m_caca, i, j); 542 561 562 if (car <= 32 || car >= 127) 563 continue; 564 543 565 glLoadIdentity(); 544 566 glTranslated(x+i*(dos_w+2*ratio_2d), y+j*(dos_h+4*ratio_2d), 0); 545 567 546 glDisable(GL_TEXTURE_2D); 547 uint16_t bg = caca_attr_to_rgb12_bg(att); 548 glColor3f((float)(bg >> 8) / 16.f, 549 (float)((bg & 0xf0) >> 4) / 16.f, 550 (float)(bg & 0xf) / 16.f); 568 float l_w=(car%16)*0.03125f; 569 float l_h=(car-car%16)*0.001953125f; 570 float dos_tex[]={l_w+0.03125f, 0.5f+l_h+0.03125f, l_w+0.03125f, 0.5f+l_h, l_w, 0.5f+l_h, l_w, 0.5f+l_h+0.03125f}; 571 glTexCoordPointer(2, GL_FLOAT, 0, dos_tex); 572 uint16_t fg = caca_attr_to_rgb12_fg(att); 573 glColor3f((float)(fg >> 8) / 16.f, 574 (float)((fg & 0xf0) >> 4) / 16.f, 575 (float)(fg & 0xf) / 16.f); 576 // FIXME: draw cursor! 577 //if(car==car_cursor) glColor3f(CR*(dos_color.r+64), CR*(dos_color.g+48), CR*(dos_color.b+48)); 551 578 glDrawArrays(GL_QUADS, 0, 4); 552 glEnable(GL_TEXTURE_2D); 553 554 if (car > 32 && car < 127) 555 { 556 float l_w=(car%16)*0.03125f; 557 float l_h=(car-car%16)*0.001953125f; 558 float dos_tex[]={l_w+0.03125f, 0.5f+l_h+0.03125f, l_w+0.03125f, 0.5f+l_h, l_w, 0.5f+l_h, l_w, 0.5f+l_h+0.03125f}; 559 glTexCoordPointer(2, GL_FLOAT, 0, dos_tex); 560 uint16_t fg = caca_attr_to_rgb12_fg(att); 561 glColor3f((float)(fg >> 8) / 16.f, 562 (float)((fg & 0xf0) >> 4) / 16.f, 563 (float)(fg & 0xf) / 16.f); 564 // FIXME: draw cursor! 565 //if(car==car_cursor) glColor3f(CR*(dos_color.r+64), CR*(dos_color.g+48), CR*(dos_color.b+48)); 566 glDrawArrays(GL_QUADS, 0, 4); 567 //if(car==car_cursor) glColor3f(1.0f, 1.0f, 1.0f); 568 } 579 //if(car==car_cursor) glColor3f(1.0f, 1.0f, 1.0f); 569 580 } 570 581 }
Note: See TracChangeset
for help on using the changeset viewer.